31/07/2009La fonction
parseInt transtype une chaine en entier. Ainsi,
renvoie 3,
renvoie 123...
Cette fonction permet aussi de transformer du binaire :
renvoie 37.
Cependant,
renverra 0 sur les navigateurs Safari, Internet Explorer, Firefox, Chrome. Seul Opera s'en sort en renvoyant 805.
Le bug provient peut-être du fait qu'une chaîne commençant par 0 serait présumée être un nombre à base 8. Comme seulement les chiffres 0 et 1 sont acceptés, les autres doivent être purement supprimés.
La solution : forcer la base 10 (le 2ème paramètre de parseInt) en faisant
Ou alors
parseInt('0805'.replace(/^0+/g, ''))
Dernière modification le 09/01/2019 - Quillevere.net