新聞中心
這篇文章將為大家詳細(xì)講解有關(guān)javascript中怎么將值轉(zhuǎn)換為數(shù)字類型,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)與策劃設(shè)計,碌曲網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:碌曲等地區(qū)。碌曲做網(wǎng)站價格咨詢:13518219792
轉(zhuǎn)換為數(shù)字類型的方法:1、使用parseInt()函數(shù),可以把值轉(zhuǎn)換為整數(shù),語法“parseInt(值)”;2、使用parseFloat()函數(shù),可以把值轉(zhuǎn)換為浮點數(shù),語法“parseFloat(值)”;3、利用乘號運算符,語法“值*1”。
javascript將值轉(zhuǎn)換為數(shù)字類型的方法:
方法1:使用 parseInt()函數(shù)
parseInt() 是一個全局方法,它可以把值轉(zhuǎn)換為整數(shù)。轉(zhuǎn)換的過程如下:
先解析位置 0 處的字符,如果不是有效數(shù)字,則直接返回 NaN。
如果位置 0 處的字符是數(shù)字,或者可以轉(zhuǎn)換為有效數(shù)字,則繼續(xù)解析位置 1 處的字符,如果不是有效數(shù)字,則直接返回位置 0 處的有效數(shù)字。
以此類推,按照從左到右的順序,逐個分析每個字符,直到發(fā)現(xiàn)非數(shù)字字符為止。
parseInt() 將把前面分析合法的數(shù)字字符全部轉(zhuǎn)換為數(shù)值并返回。
console.log(parseInt("123abc")); //返回數(shù)字123 console.log(parseInt("1.73")); //返回數(shù)字1 console.log(parseInt(".123")); //返回值NaN
浮點數(shù)中的點對于 parseInt() 來說屬于非法字符,因此不會轉(zhuǎn)換小數(shù)部分的值。
如果是以 0 開頭的數(shù)字字符串,則 parseInt() 會把它作為八進(jìn)制數(shù)字處理:先把它轉(zhuǎn)換為八進(jìn)制數(shù)值,然后再轉(zhuǎn)換為十進(jìn)制的數(shù)字返回。
如果是以 0x 開頭的數(shù)字字符串,則 parseInt() 會把它作為十六進(jìn)制數(shù)字處理:先把它轉(zhuǎn)換為十六進(jìn)制數(shù)值,然后再轉(zhuǎn)換為十進(jìn)制的數(shù)字返回。
var d = 010; //八進(jìn)制數(shù)字字符串 var e = 0x10; //十六進(jìn)制數(shù)字字符串 console.log(parseInt(d)); //返回十進(jìn)制數(shù)字8 console.log(parseInt(e)); //返回十進(jìn)制數(shù)字16
parseInt() 也支持基模式,可以把二進(jìn)制、八進(jìn)制、十六進(jìn)制等不同進(jìn)制的數(shù)字字符串轉(zhuǎn)換為整數(shù)。基模式由 parseInt() 函數(shù)的第二個參數(shù)指定。
示例
下面代碼把二進(jìn)制、八進(jìn)制和十進(jìn)制數(shù)字字符串轉(zhuǎn)換為十進(jìn)制的整數(shù)。
console.log(parseInt("10",2)); //把二進(jìn)制數(shù)字 10 轉(zhuǎn)換為十進(jìn)制整數(shù),為 2 console.log(parseInt("10",8)); //把八進(jìn)制數(shù)字 10 轉(zhuǎn)換為十進(jìn)制整數(shù),為 8 console.log(parseInt("10",10)); //把十進(jìn)制數(shù)字 10 轉(zhuǎn)換為十進(jìn)制整數(shù),為 10
方法2:使用 parseFloat() 函數(shù)
parseFloat() 也是一個全局方法,它可以把值轉(zhuǎn)換為浮點數(shù),即它能夠識別第一個出現(xiàn)的小數(shù)點,而第二個小數(shù)點被視為非法。解析過程與 parseInt() 方法相同。
console.log(parseFloat("1.234.5")); //返回數(shù)值 1.234
parseFloat() 的參數(shù)必須是十進(jìn)制形式的字符串,而不能使用八進(jìn)制或十六進(jìn)制的數(shù)字字符串。同時,對于數(shù)字前面的 0(八進(jìn)制數(shù)字標(biāo)識)會忽略,對于十六進(jìn)制的數(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 自動轉(zhuǎn)換為數(shù)值。乘以 1 之后,結(jié)果沒有發(fā)生變化,但是值的類型被轉(zhuǎn)換為數(shù)值。如果值無法被緩緩為合法的數(shù)值,則返回 NaN。
var a = 1; //數(shù)值 var b = "1"; //數(shù)字字符串 console.log(a + (b * 1)); //返回數(shù)值 2
關(guān)于javascript中怎么將值轉(zhuǎn)換為數(shù)字類型就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
本文標(biāo)題:javascript中怎么將值轉(zhuǎn)換為數(shù)字類型
當(dāng)前鏈接:http://www.dlmjj.cn/article/gheeoj.html