使弱類(lèi)型的語(yǔ)言JavaScript變強(qiáng)勢(shì)
弱類(lèi)型的Javascript不會(huì)按照程序員的愿望從實(shí)際的變量類(lèi)型到所需要的數(shù)據(jù)類(lèi)型轉(zhuǎn)換,例如一個(gè)非常常見(jiàn)的錯(cuò)誤,在瀏覽器腳本中,從表單控件中獲取用戶將要輸入的一個(gè)數(shù)值類(lèi)型的變量與另一個(gè)數(shù)值變量的和.因?yàn)樽兞款?lèi)型在表單控件中是字符串類(lèi)型(計(jì)時(shí)字符串序列包含一個(gè)數(shù)字)這種嘗試將會(huì)添加那個(gè)字符串到變量,即使這些值碰巧是一些數(shù)字,結(jié)果在第二個(gè)變量將會(huì)被轉(zhuǎn)換為字符串類(lèi)型,在最后只會(huì)把從表單控件中得到的變量添加到第一個(gè)字符串末尾。
所以強(qiáng)制類(lèi)型轉(zhuǎn)換還是比較重要的,下面看一下它的幾個(gè)強(qiáng)制轉(zhuǎn)換的函數(shù):
1. Boolean(value):把值轉(zhuǎn)換成Boolean類(lèi)型;
2. Nnumber(value):把值轉(zhuǎn)換成數(shù)字(整型或浮點(diǎn)數(shù));
3. String(value):把值轉(zhuǎn)換成字符串。
我們先來(lái)看Boolean():在要轉(zhuǎn)換的值為“至少有一字符的字符串”、“非0的數(shù)字”或“對(duì)象”,那么Boolean()將返回true,如果要轉(zhuǎn)換的值為“空字符串”、“數(shù)字0”、“undefined”,“null”這些話,那么Boolean()會(huì)返回false。你可以用以下代碼來(lái)測(cè)試
以下為引用的內(nèi)容: var t1 = Boolean("");//返回false,空字符串 |
再來(lái)看看Number():Number()與parseInt()和parseFloat()類(lèi)似,它們區(qū)別在于Number()轉(zhuǎn)換是整個(gè)值,而parseInt()和parseFloat()則可以只轉(zhuǎn)換開(kāi)頭的數(shù)字部分,例如:Number("1.2.3"),Number("123abc")會(huì)返回NaN,而parseInt("1.2.3")返回1、parseInt("123abc")返回123、parseFloat("1.2.3")返回1.2、parseFloat("123abc")返回123。Number()會(huì)先判斷要轉(zhuǎn)換的值能否被完整的轉(zhuǎn)換,然后再判斷是調(diào)用parseInt()或parseFloat()。下面列了一些值調(diào)用Number()之后的結(jié)果:
以下為引用的內(nèi)容: Number(false) 0 Number("12") 12 |
最后是String():這個(gè)以比較簡(jiǎn)單了,它可以把所有類(lèi)型的數(shù)據(jù)轉(zhuǎn)換成字符串,如:String(false)---"false"、String(1)---"1"。它和toString()方法有些不同,區(qū)別在于:
以下為引用的內(nèi)容: var t1 = null; |
- 動(dòng)態(tài)語(yǔ)言、動(dòng)態(tài)類(lèi)型語(yǔ)言、靜態(tài)類(lèi)型語(yǔ)言、強(qiáng)類(lèi)型語(yǔ)言、弱類(lèi)型語(yǔ)言介紹
- 編程語(yǔ)言里的靜態(tài)、動(dòng)態(tài)、強(qiáng)類(lèi)型、弱類(lèi)型等概念介紹
- php判斷變量類(lèi)型常用方法
- PHP 變量類(lèi)型的強(qiáng)制轉(zhuǎn)換
- php 文件上傳后綴名與文件類(lèi)型對(duì)照表(幾乎涵蓋所有文件)
- php 網(wǎng)頁(yè)播放器用來(lái)播放在線視頻的代碼(自動(dòng)判斷并選擇視頻文件類(lèi)型)
- 淺析php數(shù)據(jù)類(lèi)型轉(zhuǎn)換
- 使用php判斷瀏覽器的類(lèi)型和語(yǔ)言的函數(shù)代碼
- PHP 八種基本的數(shù)據(jù)類(lèi)型小結(jié)
- PHP弱類(lèi)型的安全問(wèn)題詳細(xì)總結(jié)
相關(guān)文章
使用JavaScript實(shí)現(xiàn)實(shí)時(shí)搜索建議功能
在我們的技術(shù)旅程中,JavaScript 無(wú)疑是一個(gè)不可或缺的伙伴,這篇文章主要為大家詳細(xì)介紹了如何使用 JavaScript 來(lái)實(shí)現(xiàn)一個(gè)復(fù)雜功能,即實(shí)時(shí)搜索建議,感興趣的可以了解下2024-02-02跟我學(xué)習(xí)javascript創(chuàng)建對(duì)象(類(lèi))的8種方法
跟我學(xué)習(xí)javascript創(chuàng)建對(duì)象(類(lèi))的8種方法,每一種方法都有詳細(xì)的介紹,不知道javascript如何創(chuàng)建對(duì)象的朋友,不要錯(cuò)過(guò)這篇文章。2015-11-11contenteditable可編輯區(qū)域設(shè)置換行實(shí)現(xiàn)技巧實(shí)例
這篇文章主要為大家介紹了contenteditable可編輯區(qū)域設(shè)置換行實(shí)現(xiàn)技巧實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01Echarts在Taro微信小程序開(kāi)發(fā)中的踩坑記錄
這篇文章主要介紹了Echarts在Taro微信小程序開(kāi)發(fā)中的踩坑記錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11javaScript的函數(shù)對(duì)象的聲明詳解
這篇文章主要介紹了javaScript的函數(shù)對(duì)象的聲明詳解,需要的朋友可以參考下2015-02-02javascript獲取指定區(qū)間范圍隨機(jī)數(shù)的方法
下面小編就為大家?guī)?lái)一篇javascript獲取指定區(qū)間范圍隨機(jī)數(shù)的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09uniapp實(shí)現(xiàn)全局變量的幾種方式總結(jié)
這里說(shuō)全局變量,著重指的是能夠全局動(dòng)態(tài)響應(yīng)的情況,下面這篇文章主要給大家介紹了關(guān)于uniapp實(shí)現(xiàn)全局變量的幾種方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-10-10使用TypeScript實(shí)現(xiàn)一個(gè)類(lèi)型安全的EventBus示例詳解
EventBus是工作中常用的工具,本文用Typescript實(shí)現(xiàn)一個(gè)具備基礎(chǔ)功能且類(lèi)型安全的EventBus,是我近期學(xué)習(xí)Typescript的知識(shí)總結(jié),對(duì)TypeScript實(shí)現(xiàn)EventBus相關(guān)知識(shí)感興趣的朋友一起看看吧2022-06-06javascript中mouseover、mouseout使用詳解
這篇文章主要介紹了javascript中mouseover、mouseout使用詳解的相關(guān)資料,需要的朋友可以參考下2015-07-07