您好,登錄后才能下訂單哦!
javascript中怎樣把字符轉化為數(shù)字,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
javascript中把字符轉化為數(shù)字的方法:1、使用“parseInt(value)”語句;2、使用“parseFloat(value)”語句;3、利用乘號運算符,語法“value * 1”;4、使用“Number(value)”語句。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
1、使用 parseInt()
parseInt() 是一個全局方法,它可以把值轉換為整數(shù)。轉換的過程如下:
先解析位置 0 處的字符,如果不是有效數(shù)字,則直接返回 NaN。
如果位置 0 處的字符是數(shù)字,或者可以轉換為有效數(shù)字,則繼續(xù)解析位置 1 處的字符,如果不是有效數(shù)字,則直接返回位置 0 處的有效數(shù)字。
以此類推,按照從左到右的順序,逐個分析每個字符,直到發(fā)現(xiàn)非數(shù)字字符為止。
parseInt() 將把前面分析合法的數(shù)字字符全部轉換為數(shù)值并返回。
console.log(parseInt("123abc")); //返回數(shù)字123 console.log(parseInt("1.73")); //返回數(shù)字1 console.log(parseInt(".123")); //返回值NaN
浮點數(shù)中的點對于 parseInt() 來說屬于非法字符,因此不會轉換小數(shù)部分的值。
2、使用 parseFloat() 函數(shù)
parseFloat() 也是一個全局方法,它可以把值轉換為浮點數(shù),即它能夠識別第一個出現(xiàn)的小數(shù)點,而第二個小數(shù)點被視為非法。解析過程與 parseInt() 方法相同。
console.log(parseFloat("1.234.5")); //返回數(shù)值 1.234
parseFloat() 的參數(shù)必須是十進制形式的字符串,而不能使用八進制或十六進制的數(shù)字字符串。同時,對于數(shù)字前面的 0(八進制數(shù)字標識)會忽略,對于十六進制的數(shù)字將返回 0。
console.log(parseFloat("123")); //返回數(shù)值 123 console.log(parseFloat("123abc")); //返回數(shù)值 123 console.log(parseFloat("010")); //返回數(shù)值 10 console.log(parseFloat("0x10")); //返回數(shù)值 0 console.log(parseFloat("x10")); //返回數(shù)值 NaN
3、使用乘號運算符
如果變量乘以 1,則變量會被 JavaScript 自動轉換為數(shù)值。乘以 1 之后,結果沒有發(fā)生變化,但是值的類型被轉換為數(shù)值。如果值無法被緩緩為合法的數(shù)值,則返回 NaN。
var a = 1; //數(shù)值 var b = "1"; //數(shù)字字符串 console.log(a + (b * 1)); //返回數(shù)值 2
4、使用 Number() 函數(shù)
Number() 強制轉換與 parseInt() 和 parseFloat() 方法的處理方式不同,Number() 轉換的是整體,而不是局部值。
console.log(Number("123abc")); //返回NaN console.log(Number("123")); //返回數(shù)值123
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。