En jQuery, dois-je utiliser parseFloat (el.width ()) ou parseInt (el.width (), 10)? lequel est le plus préféré,
-
19-09-2019 - |
Question
J'ai toujours cette question:
Quand je ne l'esprit le nombre exact flottant
Lequel est préférable?
parseFloat
someValue = parseFloat(el.outerWidth())+parseFloat(ele2.css("marginRight")),
parseInt
someValue = parseInt(el.outerWidth(), 10)+parseInt(ele2.css("marginRight"), 10),
Quelle méthode est plus facile pour le moteur JS?
La solution
Il est aussi large que longue est vraiment. parseFloat
est inutile ici parce que les valeurs seront toujours entiers. Je préfère économiser sur les octets et utiliser le opérateur unaire +
:
someValue = (+el.outerWidth())+(+ele2.css("marginRight"));
Autres conseils
Quand vous faites: el.outerWidth()
jQuery est déjà de retour et entier, voir la documentation pour les types de retour . Donc dans ce cas, il n'y a pas besoin d'analyser la largeur du tout.
Il convient de noter, il y a une autre surcharge de outerWidth(bool)
qui inclut la marge si vous voulez des marges gauche et droite, vous pouvez simplement le faire si tel est le cas:
someValue = el.outerWidth(true);
La meilleure solution est de la solution de cours Andy E, mais pour répondre à votre question:
Je pense que parseFloat
est inutile si votre numéro pas de virgule flottante, donc j'utiliser parseInt
.
La taille de la variable est un facteur important dans les comparaisons de performance, mais int
et float
occupent le même espace dans la mémoire (4 octets), il dosen't vraiment d'importance. De plus, parseFloat
semble faire plus de calcul et chaîne-analyse syntaxique que parseInt
.