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中的語句
- 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)文章
一行代碼實(shí)現(xiàn)純數(shù)據(jù)json對(duì)象的深度克隆實(shí)現(xiàn)思路
今天整理了下資料,分析下為什么一句話可以實(shí)現(xiàn)純數(shù)據(jù)json對(duì)象的深度克隆,感興趣的朋友可以了解下哦2013-01-01JavaScript的Object.defineProperty詳解
本篇文章給大家詳細(xì)講述了JavaScript的Object.defineProperty的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友參考學(xué)習(xí)下。2018-07-07淺談Javascript中substr和substring的區(qū)別
這篇文章主要介紹了Javascript中substr和substring的區(qū)別,非常的簡單明了,有需要的小伙伴可以來仔細(xì)看看。2015-09-09深入淺出webpack教程系列_安裝與基本打包用法和命令參數(shù)詳解
下面小編就為大家?guī)硪黄钊霚\出webpack教程系列_安裝與基本打包用法和命令參數(shù)詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就想給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09JS實(shí)現(xiàn)把鼠標(biāo)放到鏈接上出現(xiàn)滾動(dòng)文字的方法
這篇文章主要介紹了JS實(shí)現(xiàn)把鼠標(biāo)放到鏈接上出現(xiàn)滾動(dòng)文字的方法,涉及JavaScript響應(yīng)鼠標(biāo)事件動(dòng)態(tài)操作頁面元素的相關(guān)技巧,需要的朋友可以參考下2016-04-04JavaScript實(shí)現(xiàn)選項(xiàng)卡效果的分析及步驟
這篇文章主要給大家介紹了關(guān)于JavaScript實(shí)現(xiàn)選項(xiàng)卡效果的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用JavaScript具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04js金額千分位的6種實(shí)現(xiàn)方法實(shí)例
在前端開發(fā)中經(jīng)常會(huì)遇到這樣一種需求,使用Javascript格式化數(shù)字進(jìn)行輸出,下面這篇文章主要給大家介紹了關(guān)于js金額千分位的6種實(shí)現(xiàn)方法,需要的朋友可以參考下2022-03-03