En développement web, il est courant de manipuler des données liées à des tailles de fichiers. Mais afficher 1337000 octets à vos utilisateurs n'est pas particulièrement informatif. C'est là qu'intervient cette petite lib JS qui transforme ces nombres abstraits en formats compréhensibles par tous.
Pretty-bytes est une librairie légère qui convertit des nombres d'octets en chaînes de caractères lisibles.
Au lieu d'afficher 1337, vous obtenez 1.34 kB – bien plus parlant pour vos utilisateurs !
Cette librairie utilise le système décimal (base-10) par défaut, ce qui correspond aux standards du Système International (SI) pour les préfixes d'unités.
Point à souligner : la lib n'utilise aucune dépendance !
Installation et utilisation de base
L'installation est simple avec npm : npm install pretty-bytes
Et l'utilisation l'est tout autant :
import prettyBytes from 'pretty-bytes';
prettyBytes(1337); // '1.34 kB'
prettyBytes(100); // '100 B'
prettyBytes(1500000); // '1.5 MB'
Les fonctionnalités avancées
Affichage en bits
Pour certains cas d'usage comme les débits de connexion, vous pouvez afficher en bits plutôt qu'en octets :
prettyBytes(1337, {bits: true}); // '1.34 kbit'
Gestion des différences de taille
L'option signed permet d'afficher les différences avec un signe :
prettyBytes(42, {signed: true}); // '+42 B'
prettyBytes(-1500, {signed: true}); // '-1.5 kB'
Localisation
La librairie supporte la localisation pour adapter l'affichage aux conventions régionales :
prettyBytes(1337, {locale: 'de'}); // '1,34 kB' (virgule allemande)
prettyBytes(1337, {locale: 'fr'}); // '1,34 kB' (virgule française)
Contrôle de la précision
Vous pouvez définir le nombre de décimales à afficher :
// Minimum 3 décimales
prettyBytes(1900, {minimumFractionDigits: 3}); // '1.900 kB'
// Maximum 1 décimale
prettyBytes(1920, {maximumFractionDigits: 1}); // '1.9 kB'
Préfixes binaires
Pour les quantités de mémoire, vous pouvez utiliser les préfixes binaires (base-2) :
prettyBytes(1024, {binary: true}); // '1 KiB' (kibibyte)








