In jQuery, devo usare parseFloat (el.width ()) o parseInt (el.width (), 10)? che è più preferito

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

Domanda

Ho sempre avuto questa domanda:
Quando io non importa il numero esatto di galleggiamento

Qual è preferito?

parseFloat

    someValue  = parseFloat(el.outerWidth())+parseFloat(ele2.css("marginRight")),

parseInt

    someValue  = parseInt(el.outerWidth(), 10)+parseInt(ele2.css("marginRight"), 10),

Quale metodo è più facile per il motore JS?

È stato utile?

Soluzione

E 'quanto più ampia è lungo davvero. parseFloat è inutile qui perché i valori saranno sempre numeri interi. Preferirei risparmiare sulle byte e utilizzare il unario operatore + :

someValue  = (+el.outerWidth())+(+ele2.css("marginRight"));

Altri suggerimenti

Quando si sta facendo: el.outerWidth() jQuery è già tornando e intero, vedere la documentazione per i tipi di ritorno . Quindi, in questo caso, non c'è bisogno di analizzare la larghezza a tutti.

Si deve notare, c'è un altro sovraccarico outerWidth(bool) che include il margine, se si desidera margini destro e sinistro, si può solo fare questo se questo è il caso:

someValue = el.outerWidth(true);

La soluzione migliore è di soluzione naturalmente Andy E, ma per rispondere alla tua domanda: Penso parseFloat è inutile se il vostro numero non ha un virgola mobile, quindi vorrei usare parseInt.

La dimensione della variabile è un fattore importante nei confronti delle prestazioni, ma int e float occupano lo stesso spazio nella memoria (4 byte), quindi dosen't importa. Inoltre, parseFloat sembra fare di più il calcolo e la stringa-analisi di parseInt.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top