En jQuery, dois-je utiliser parseFloat (el.width ()) ou parseInt (el.width (), 10)? lequel est le plus préféré,

StackOverflow https://stackoverflow.com/questions/2426148

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?

Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top