javascript顯式類型轉(zhuǎn)換實(shí)例分析
本文實(shí)例講述了javascript顯式類型轉(zhuǎn)換的方法。分享給大家供大家參考。具體分析如下:
盡管js可以做許多自動(dòng)類型轉(zhuǎn)換,但某些時(shí)候仍然需要做顯示類型轉(zhuǎn)換或?yàn)榱舜a邏輯清晰易讀而做顯示類型轉(zhuǎn)換。
做顯示類型轉(zhuǎn)換最簡單的方法就是用Boolean()、Number()、String()或Object()函數(shù):
Number("3") //3 String(false) //"false" false.toString()//同上 Boolean([]) //true Object(3) //new Number(3)
js中的某些運(yùn)算符會(huì)做隱式類型轉(zhuǎn)換,比如:
若+運(yùn)算符一個(gè)操作數(shù)是字符串,則它會(huì)將另一個(gè)操作數(shù)轉(zhuǎn)換為字符串;
一元+運(yùn)算符將其操作數(shù)轉(zhuǎn)換為數(shù)字;
一元!運(yùn)算符將操作數(shù)轉(zhuǎn)換為布爾值并取反;
代碼中經(jīng)??梢钥吹饺缦骂愋娃D(zhuǎn)換的用法:
x+"" //等價(jià)于String(x) +x //等價(jià)于Number(x) x-0 //同上 !!x //等價(jià)于Boolean(x),是雙嘆號(hào)哦
Number類定義的toString()方法可以按轉(zhuǎn)換基數(shù)(radix)將數(shù)字轉(zhuǎn)換為其它進(jìn)制數(shù)的字符串表示(2-36之間):
var n =11; bin_str = n.toString(2); oct_str = "0" + n.toString(8); hex_str = "0x" + n.toString(16);
Number類還為數(shù)字到字符串的類型轉(zhuǎn)換場景定義了另外3個(gè)方法:
toFixed()根據(jù)小數(shù)點(diǎn)后的指定位數(shù)將數(shù)字轉(zhuǎn)換為字符串,它從不使用指數(shù)記數(shù)法。
11.113344.toFixed(5) //"11.11334"
toExponential()使用指數(shù)記數(shù)法將數(shù)字轉(zhuǎn)換為指數(shù)形式的字符串,其中小數(shù)點(diǎn)前只有一位,小數(shù)點(diǎn)后位數(shù)由參數(shù)指定:
11.113359.toExponential(5) //"1.11134e+1"
toPrecision()根據(jù)指定的有效數(shù)字位數(shù)將數(shù)字轉(zhuǎn)換為字符串,如果有效數(shù)字位數(shù)小于數(shù)字整數(shù)部分的位數(shù)則轉(zhuǎn)換為指數(shù)形式。
以上3個(gè)方法都會(huì)適當(dāng)?shù)倪M(jìn)行四舍五入或填充0.
需要說明的是前面提到的Number()函數(shù)只能基于十進(jìn)制數(shù)進(jìn)行轉(zhuǎn)換,而且不能出現(xiàn)非法字符。我們可以使用全局函數(shù)(不屬于任何類的方法)parseInt或parseFloat函數(shù)來進(jìn)行字符串到數(shù)字的轉(zhuǎn)換;
parseInt()只解析整數(shù),而parseFloat()可以解析整數(shù)和浮點(diǎn)數(shù)。
如果字符串前綴為”0x”或者”0X”,parseInt()將其解釋為16進(jìn)制數(shù);parseInt和parseFloat都會(huì)跳過任意數(shù)量的前導(dǎo)空格,且盡可能解析更多的數(shù)值字符;如果第一個(gè)非空格字符是非法數(shù)字,則返回NaN。
parseInt可以接收第二個(gè)可選參數(shù),該參數(shù)指定數(shù)字轉(zhuǎn)換的基數(shù),取值范圍是2-36.
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
相關(guān)文章
Cropper.js進(jìn)階之裁剪后保存至服務(wù)器實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了Cropper.js進(jìn)階之裁剪后保存至服務(wù)器實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05JavaScript高級(jí)程序設(shè)計(jì) 閱讀筆記(四) ECMAScript中的類型轉(zhuǎn)換
ECMAScript中的類型轉(zhuǎn)換,學(xué)習(xí)js的朋友可以看看2012-02-02利用CSS、JavaScript及Ajax實(shí)現(xiàn)高效的圖片預(yù)加載
圖片預(yù)加載想必大家都不陌生吧,實(shí)現(xiàn)預(yù)加載圖片有很多方法,包括使用CSS、JavaScript及兩者的各種組合。這些技術(shù)可根據(jù)不同設(shè)計(jì)場景設(shè)計(jì)出相應(yīng)的解決方案,十分高效2013-10-10Javascript中Promise的四種常用方法總結(jié)
這篇文章主要給大家總結(jié)介紹了關(guān)于Javascript中Promise的四種常用方法,分別是處理異步回調(diào)、多個(gè)異步函數(shù)同步處理、異步依賴異步回調(diào)和封裝統(tǒng)一的入口辦法或者錯(cuò)誤處理,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2017-07-07小程序scroll-view組件實(shí)現(xiàn)滾動(dòng)的示例代碼
這篇文章主要介紹了小程序scroll-view組件實(shí)現(xiàn)滾動(dòng)的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-09-09JQuery 表格操作(交替顯示、拖動(dòng)表格行、選擇行等)
JQuery 表格操作包括交替顯示、拖動(dòng)表格行、選擇行等功能,大家可以參考下。2009-07-07