JavaScript高級(jí)程序設(shè)計(jì) 閱讀筆記(四) ECMAScript中的類型轉(zhuǎn)換
更新時(shí)間:2012年02月27日 23:34:09 作者:
ECMAScript中的類型轉(zhuǎn)換,學(xué)習(xí)js的朋友可以看看
2.7 類型轉(zhuǎn)換
1、轉(zhuǎn)換成字符串
所有對(duì)象都有toString()方法可以轉(zhuǎn)換成字符串,要注意的是Number類型的toString()方法,它有兩種模式,即默認(rèn)模式和基模式,采用默認(rèn)模式toString()方法只是用相應(yīng)的字符串輸出對(duì)應(yīng)的10進(jìn)制數(shù)字值,用基模式可以用不同的基輸出數(shù)字。示例:
var iNum1=10;
var iNum2=10.0;
var iNum3=10;
alert(iNum1.toString()); //outpus "10"
alert(iNum2.toString()); //outpus "10"
alert(iNum3.toString(2)); //outpus "1010"
alert(iNum3.toString(8)); //outpus "12"
alert(iNum3.toString(16)); //outpus "A"
2、轉(zhuǎn)換成數(shù)字
ECMAScript提供了兩種把非數(shù)字的原始值轉(zhuǎn)換成數(shù)字的方法:parseInt()和parseFloat(),需要注意的是parseInt()是逐個(gè)字符轉(zhuǎn)換的,直到非數(shù)字字符為止。示例程序如下:
var iNum1=parseInt("1234blue"); //returns 1234
var iNum2=parseInt("0xA"); //returns 10
var iNum3=parseInt("22.5"); //returns 22
var iNum4=parseInt("blue"); //returns NaN
parseInt()方法還有基模式,可以把二進(jìn)制,八進(jìn)制,十六進(jìn)制或其他任何進(jìn)制的字符串轉(zhuǎn)換成整數(shù)?;怯蓀arseInt()第二個(gè)參數(shù)指定的,示例如下:
var iNum1=parseInt("AF",16); //returns 175
var iNum2=parseInt("10",2); //returns 2
var iNum3=parseInt("10",8); //returns 8
var iNum4=parseInt("10",10); //returns 10
//注意:如果十進(jìn)制數(shù)有前導(dǎo)0要用基數(shù)模式
var iNum5=parseInt("010"); //returns 8
var iNum6=parseInt("010",8); //returns 8
var iNum7=parseInt("010",10); //returns 10
paraseFloat()沒有基模式,其他與parseInt()大致相同,示例:
var fNum1=paraseFloat("1234blue"); //returns 1234.0
var fNum2=paraseFloat("0xA"); //returns NaN
var fNum3=paraseFloat("22.5"); //returns 22.5
var fNum4=paraseFloat("22.34.5"); //returns 22.34
var fNum5=paraseFloat("0908"); //returns 908
var fNum6=paraseFloat("blue"); //returns NaN
3、強(qiáng)制類型轉(zhuǎn)換
ECMAScript中可用的強(qiáng)制類型轉(zhuǎn)換如下:
Boolean(value)——把給定的值轉(zhuǎn)換成Boolean型
Number(value)——把給定的值轉(zhuǎn)換成數(shù)字(可以是整數(shù)或浮點(diǎn)數(shù))
String(value)——把給定的值轉(zhuǎn)換成字符串
示例:
var b1=Boolean(""); //false - empty string
var b2=Boolean("hi"); //true - not empty string
var b3=Boolean(100); //true - not zero number
var b4=Boolean(null); //false - null
var b5=Boolean(0); //false - zero
var b6=Boolean(new Object()); //true object
var i1=Number(false); //0
var i2=Number(true); //1
var i3=Number(undefined); //NaN
var i4=Number(null); //0
var f5=Number("5.5"); //5.5
var i6=Number("56"); //56
var i7=Number("5.6.7"); //NaN
var i8=Number(new Object()); //NaN
var i9=Number(100); //100
作者:天行健,自強(qiáng)不息
1、轉(zhuǎn)換成字符串
所有對(duì)象都有toString()方法可以轉(zhuǎn)換成字符串,要注意的是Number類型的toString()方法,它有兩種模式,即默認(rèn)模式和基模式,采用默認(rèn)模式toString()方法只是用相應(yīng)的字符串輸出對(duì)應(yīng)的10進(jìn)制數(shù)字值,用基模式可以用不同的基輸出數(shù)字。示例:
復(fù)制代碼 代碼如下:
var iNum1=10;
var iNum2=10.0;
var iNum3=10;
alert(iNum1.toString()); //outpus "10"
alert(iNum2.toString()); //outpus "10"
alert(iNum3.toString(2)); //outpus "1010"
alert(iNum3.toString(8)); //outpus "12"
alert(iNum3.toString(16)); //outpus "A"
2、轉(zhuǎn)換成數(shù)字
ECMAScript提供了兩種把非數(shù)字的原始值轉(zhuǎn)換成數(shù)字的方法:parseInt()和parseFloat(),需要注意的是parseInt()是逐個(gè)字符轉(zhuǎn)換的,直到非數(shù)字字符為止。示例程序如下:
復(fù)制代碼 代碼如下:
var iNum1=parseInt("1234blue"); //returns 1234
var iNum2=parseInt("0xA"); //returns 10
var iNum3=parseInt("22.5"); //returns 22
var iNum4=parseInt("blue"); //returns NaN
parseInt()方法還有基模式,可以把二進(jìn)制,八進(jìn)制,十六進(jìn)制或其他任何進(jìn)制的字符串轉(zhuǎn)換成整數(shù)?;怯蓀arseInt()第二個(gè)參數(shù)指定的,示例如下:
復(fù)制代碼 代碼如下:
var iNum1=parseInt("AF",16); //returns 175
var iNum2=parseInt("10",2); //returns 2
var iNum3=parseInt("10",8); //returns 8
var iNum4=parseInt("10",10); //returns 10
//注意:如果十進(jìn)制數(shù)有前導(dǎo)0要用基數(shù)模式
var iNum5=parseInt("010"); //returns 8
var iNum6=parseInt("010",8); //returns 8
var iNum7=parseInt("010",10); //returns 10
paraseFloat()沒有基模式,其他與parseInt()大致相同,示例:
復(fù)制代碼 代碼如下:
var fNum1=paraseFloat("1234blue"); //returns 1234.0
var fNum2=paraseFloat("0xA"); //returns NaN
var fNum3=paraseFloat("22.5"); //returns 22.5
var fNum4=paraseFloat("22.34.5"); //returns 22.34
var fNum5=paraseFloat("0908"); //returns 908
var fNum6=paraseFloat("blue"); //returns NaN
3、強(qiáng)制類型轉(zhuǎn)換
ECMAScript中可用的強(qiáng)制類型轉(zhuǎn)換如下:
Boolean(value)——把給定的值轉(zhuǎn)換成Boolean型
Number(value)——把給定的值轉(zhuǎn)換成數(shù)字(可以是整數(shù)或浮點(diǎn)數(shù))
String(value)——把給定的值轉(zhuǎn)換成字符串
示例:
復(fù)制代碼 代碼如下:
var b1=Boolean(""); //false - empty string
var b2=Boolean("hi"); //true - not empty string
var b3=Boolean(100); //true - not zero number
var b4=Boolean(null); //false - null
var b5=Boolean(0); //false - zero
var b6=Boolean(new Object()); //true object
var i1=Number(false); //0
var i2=Number(true); //1
var i3=Number(undefined); //NaN
var i4=Number(null); //0
var f5=Number("5.5"); //5.5
var i6=Number("56"); //56
var i7=Number("5.6.7"); //NaN
var i8=Number(new Object()); //NaN
var i9=Number(100); //100
作者:天行健,自強(qiáng)不息
您可能感興趣的文章:
- JavaScript ECMA-262-3 深入解析(一):執(zhí)行上下文實(shí)例分析
- JavaScript高級(jí)程序設(shè)計(jì) 閱讀筆記(七) ECMAScript中的語(yǔ)句
- JavaScript高級(jí)程序設(shè)計(jì)閱讀筆記(六) ECMAScript中的運(yùn)算符(二)
- JavaScript高級(jí)程序設(shè)計(jì)閱讀筆記(五) ECMAScript中的運(yùn)算符(一)
- 《JavaScript高級(jí)程序設(shè)計(jì)》閱讀筆記(三) ECMAScript中的引用類型
- 《JavaScript高級(jí)程序設(shè)計(jì)》閱讀筆記(二) ECMAScript中的原始類型
- 《JavaScript高級(jí)程序設(shè)計(jì)》閱讀筆記(一) ECMAScript基礎(chǔ)
- JavaScript ECMA-262-3 深入解析.第三章.this
- JavaScript ECMA-262-3 深入解析(二):變量對(duì)象實(shí)例詳解
相關(guān)文章
JavaScript中this的四個(gè)綁定規(guī)則總結(jié)
相信大家都知道,ES5及之前時(shí)代的JavaScript中this的綁定機(jī)制是讓很多開發(fā)者頭疼不已的事情。this 的綁定變化多端,讓筆者也吃了不少虧。所以本文總結(jié)了this的四條綁定規(guī)則,在此記錄,以防自己遺忘,也方便他人參考借鑒。下面來(lái)一起看看吧。2016-09-09
JS實(shí)現(xiàn)網(wǎng)頁(yè)游戲中滑塊響應(yīng)鼠標(biāo)點(diǎn)擊移動(dòng)效果
這篇文章主要介紹了JS實(shí)現(xiàn)網(wǎng)頁(yè)游戲中滑塊響應(yīng)鼠標(biāo)點(diǎn)擊移動(dòng)效果,涉及JavaScript針對(duì)頁(yè)面鼠標(biāo)事件、滾動(dòng)事件及元素屬性等相關(guān)操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10
微信小程序wxml不能使用Array.includes條件判斷解決方法
這篇文章主要為大家介紹了微信小程序wxml不能使用Array.includes條件判斷解決方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
解讀input標(biāo)簽的value屬性及name屬性
這篇文章主要介紹了解讀input標(biāo)簽的value屬性,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01
JavaScript 全面解析各種瀏覽器網(wǎng)頁(yè)中的JS 執(zhí)行順序
近來(lái)我通過一些測(cè)試以全面的解析網(wǎng)頁(yè)在各種瀏覽器中的JavaScript代碼的執(zhí)行順序,在這兒做個(gè)記錄。2009-02-02
js實(shí)現(xiàn)可輸入可選擇的select下拉框
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)可輸入可選擇的select下拉框,可及時(shí)匹配包含輸入的內(nèi)容,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12
JavaScript簡(jiǎn)單實(shí)現(xiàn)彈出拖拽窗口(一)
這篇文章主要為大家詳細(xì)介紹了JavaScript簡(jiǎn)單實(shí)現(xiàn)彈出拖拽窗口的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06
JS實(shí)現(xiàn)給不同元素設(shè)置不同的定時(shí)器
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)給不同元素設(shè)置不同的定時(shí)器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07

