這篇文章主要講解了“javascript如何將值轉(zhuǎn)換成數(shù)字類(lèi)型”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“javascript如何將值轉(zhuǎn)換成數(shù)字類(lèi)型”吧!
站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到順德網(wǎng)站設(shè)計(jì)與順德網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國(guó)際域名空間、網(wǎng)頁(yè)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋順德地區(qū)。
javascript將值轉(zhuǎn)換成數(shù)字類(lèi)型的方法:1、使用parseInt()方法,可以把值轉(zhuǎn)換為整數(shù);2、使用parseFloat()函數(shù),可以把值轉(zhuǎn)換為浮點(diǎn)數(shù);3、使用乘號(hào)運(yùn)算符,將變量乘以1,則變量會(huì)被自動(dòng)轉(zhuǎn)換為數(shù)值,且結(jié)果沒(méi)有發(fā)生變化。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
方法1:使用 parseInt()
parseInt() 是一個(gè)全局方法,它可以把值轉(zhuǎn)換為整數(shù)。轉(zhuǎn)換的過(guò)程如下:
先解析位置 0 處的字符,如果不是有效數(shù)字,則直接返回 NaN。
如果位置 0 處的字符是數(shù)字,或者可以轉(zhuǎn)換為有效數(shù)字,則繼續(xù)解析位置 1 處的字符,如果不是有效數(shù)字,則直接返回位置 0 處的有效數(shù)字。
以此類(lèi)推,按照從左到右的順序,逐個(gè)分析每個(gè)字符,直到發(fā)現(xiàn)非數(shù)字字符為止。
parseInt() 將把前面分析合法的數(shù)字字符全部轉(zhuǎn)換為數(shù)值并返回。
console.log(parseInt("123abc")); //返回?cái)?shù)字123 console.log(parseInt("1.73")); //返回?cái)?shù)字1 console.log(parseInt(".123")); //返回值NaN
浮點(diǎn)數(shù)中的點(diǎn)對(duì)于 parseInt() 來(lái)說(shuō)屬于非法字符,因此不會(huì)轉(zhuǎn)換小數(shù)部分的值。
如果是以 0 開(kāi)頭的數(shù)字字符串,則 parseInt() 會(huì)把它作為八進(jìn)制數(shù)字處理:先把它轉(zhuǎn)換為八進(jìn)制數(shù)值,然后再轉(zhuǎn)換為十進(jìn)制的數(shù)字返回。
如果是以 0x 開(kāi)頭的數(shù)字字符串,則 parseInt() 會(huì)把它作為十六進(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ù)?;J接?parseInt() 函數(shù)的第二個(gè)參數(shù)指定。
【實(shí)例1】下面代碼把十六進(jìn)制數(shù)字字符串“123abc”轉(zhuǎn)換為十進(jìn)制整數(shù)。
var a = "123abc"; console.log(parseInt(a,16)); //返回十進(jìn)制整數(shù)1194684
【實(shí)例2】下面代碼把二進(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
【實(shí)例3】如果第一個(gè)參數(shù)是十進(jìn)制的值,包含 0 前綴,為了避免被誤解為八進(jìn)制的數(shù)字,則應(yīng)該指定第二個(gè)參數(shù)值為 10,即顯示定義基模式,而不是采用默認(rèn)基模式。
console.log(parseInt("010")); //把默認(rèn)基模式數(shù)字 010 轉(zhuǎn)換為十進(jìn)制整數(shù)為 10 console.log(parseInt("010",8)); //把八進(jìn)制數(shù)字 010 轉(zhuǎn)換為十進(jìn)制整數(shù)為 8 console.log(parseInt("010",10)); //把十進(jìn)制數(shù)字 010 轉(zhuǎn)換為十進(jìn)制整數(shù)為 10
方法2:使用 parseFloat() 函數(shù)
parseFloat() 也是一個(gè)全局方法,它可以把值轉(zhuǎn)換為浮點(diǎn)數(shù),即它能夠識(shí)別第一個(gè)出現(xiàn)的小數(shù)點(diǎn),而第二個(gè)小數(shù)點(diǎn)被視為非法。解析過(guò)程與 parseInt() 方法相同。
console.log(parseFloat("1.234.5")); //返回?cái)?shù)值 1.234
parseFloat() 的參數(shù)必須是十進(jìn)制形式的字符串,而不能使用八進(jìn)制或十六進(jìn)制的數(shù)字字符串。同時(shí),對(duì)于數(shù)字前面的 0(八進(jìn)制數(shù)字標(biāo)識(shí))會(huì)忽略,對(duì)于十六進(jìn)制的數(shù)字將返回 0。
console.log(parseFloat("123")); //返回?cái)?shù)值 123 console.log(parseFloat("123abc")); //返回?cái)?shù)值 123 console.log(parseFloat("010")); //返回?cái)?shù)值 10 console.log(parseFloat("0x10")); //返回?cái)?shù)值 0 console.log(parseFloat("x10")); //返回?cái)?shù)值 NaN
方法3:使用乘號(hào)運(yùn)算符
如果變量乘以 1,則變量會(huì)被 JavaScript 自動(dòng)轉(zhuǎn)換為數(shù)值。乘以 1 之后,結(jié)果沒(méi)有發(fā)生變化,但是值的類(lèi)型被轉(zhuǎn)換為數(shù)值。如果值無(wú)法被緩緩為合法的數(shù)值,則返回 NaN。
var a = 1; //數(shù)值 var b = "1"; //數(shù)字字符串 console.log(a + (b * 1)); //返回?cái)?shù)值 2
感謝各位的閱讀,以上就是“javascript如何將值轉(zhuǎn)換成數(shù)字類(lèi)型”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)javascript如何將值轉(zhuǎn)換成數(shù)字類(lèi)型這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
網(wǎng)站名稱(chēng):javascript如何將值轉(zhuǎn)換成數(shù)字類(lèi)型
標(biāo)題網(wǎng)址:http://bm7419.com/article2/gospic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、動(dòng)態(tài)網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、Google、軟件開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)