国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

JavaScript中的值類型轉換介紹_javascript技巧

來源:懂視網 責編:小采 時間:2020-11-27 21:31:25
文檔

JavaScript中的值類型轉換介紹_javascript技巧

JavaScript中的值類型轉換介紹_javascript技巧:在JavaScript中進行+、-、*、/、==、!=等運算時,如果操作符左右兩邊的值類型與預期類型不一致,JavaScript會將操作符兩邊的值轉換成預期的類型后再進行操作。預期值類型為string時,JavaScript會將值轉換為string;預期值類型為number時,Java
推薦度:
導讀JavaScript中的值類型轉換介紹_javascript技巧:在JavaScript中進行+、-、*、/、==、!=等運算時,如果操作符左右兩邊的值類型與預期類型不一致,JavaScript會將操作符兩邊的值轉換成預期的類型后再進行操作。預期值類型為string時,JavaScript會將值轉換為string;預期值類型為number時,Java

在JavaScript中進行+、-、*、/、==、!=等運算時,如果操作符左右兩邊的值類型與預期類型不一致,JavaScript會將操作符兩邊的值轉換成預期的類型后再進行操作。預期值類型為string時,JavaScript會將值轉換為string;預期值類型為number時,JavaScript會將值轉換為number (如果無法轉換為數值,則返回NaN)比如:

代碼如下:
console.log(10 + " cats");//10 cats
console.log(10 * " cats");//NaN, " cats" will be converted to NaN
console.log(10 + "2");//102
console.log(10 - "2");//8
console.log(10 / "2");//5
console.log(10 * "2");//20
console.log(10 * " 2");//20
console.log("10" * "2");//20

值類型轉換規則

JavaScript中的值轉換規則可以參考“JavaScript – The Definitive Guide”一書中的Table 3-2. JavaScript type conversions。比較值得注意的一些地方是:

1.undefined轉換成number后結果為NaN。
2.null轉換成number后結果為0。
3.空字符串”"轉換成number后結果為0。
4.-0轉換成string后結果為”0″。
5.空數組[]轉換成number后結果為0。
6.僅有一個number成員的數組(如[9])轉換成number后結果為該numer值(9)。

當JavaScript將string轉換成number時,有兩個比較有趣的規則:

1.JavaScript會將字符串開頭和結尾處的空白字符刪除后再進行轉換,因此像” 42 “這樣的字符串可以順利的被轉換成數字42。

2.刪除開頭和結尾處的空白字符后,如果字符串中依然包含非數字字符,那么該字符串會被轉換成NaN。比如:”3 m”就會被轉換成NaN。

實例:

代碼如下:
console.log(10 * " 3 ");//30
console.log(10 * "3 m");//NaN, "3 m" will be converted to NaN

值類型轉換與比較

在JavaScript中,等于操作符(==)的使用會涉及到值類型轉換:如果==操作符兩邊的值類型不一致,那么JS會將它們轉換成一致的類型后再加以判斷。需要小心的是,兩個不同類型的值,經過類型轉換后也許可以等價,但這并不意味著對它們使用==操作符的結果就一定為true。一個簡單的例子是undefined和false:將undefined轉換成boolean類型后結果剛好為false,但事實上undefined==false的結果卻為false。

顯式類型轉換

使用JavaScript的類型自動轉換非常便捷,但同時也很容易帶來諸如代碼可維護性等問題。為了使程序代碼更加清晰、減少歧義,有時會在JS程序中使用顯式類型轉換:
代碼如下:
Number("3")//3
String(false)//"false"
Boolean([])//true

大多數情況下,顯式類型轉換的結果與JS自動類型轉換的結果是一致的;但存在1個特例:當將null或者undefined自動轉換成Object時,JS將拋出TypeError錯誤;但當顯式地將null或者undefined轉換成Object時,JS將返回一個空的對象:
代碼如下:
console.log(Object(undefined));//empty object
console.log(Object(null));//empty object

同時,如果顯式轉換所指定的類型與JS自動轉換所指定的類型不一樣,那么,得到的結果也不一樣。比如之前所提及的undefined==false結果為false;如果顯式指定轉換類型為Boolean,那么得到的結果就為true了:
代碼如下:
console.log(undefined == false);//false
console.log(Boolean(undefined) == Boolean(false));//true

對類型自動轉換的使用

在JS中,可以使用值類型的自動轉換,通過操作符來達到和顯式轉換一樣的效果,比如:
代碼如下:
console.log(false + "");//"false"
console.log(+false);//0
console.log(!!3);//true

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JavaScript中的值類型轉換介紹_javascript技巧

JavaScript中的值類型轉換介紹_javascript技巧:在JavaScript中進行+、-、*、/、==、!=等運算時,如果操作符左右兩邊的值類型與預期類型不一致,JavaScript會將操作符兩邊的值轉換成預期的類型后再進行操作。預期值類型為string時,JavaScript會將值轉換為string;預期值類型為number時,Java
推薦度:
標簽: 轉換 js 類型
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 亚洲第一区se | 欧州人曾交大全 | 国产成人精品第一区二区 | 日本欧美一区二区 | 欧美亚洲综合另类在线观看 | 国产成人+亚洲欧洲 | 一区免费在线观看 | 日韩欧美 在线播放 | 亚洲欧洲第一页 | 在线亚洲欧国产精品专区 | 精品一区二区三区在线观看 | 欧美日韩国产在线播放 | 水蜜桃网站 | 日韩二三区 | 色伊人久久 | 欧美精品在线免费 | 免费一看一级毛片全播放 | 日韩国产欧美一区二区三区在线 | 国产一区二区三区免费视频 | 啪啪网址大全 | 久久久精品一区二区三区 | 国产区在线看 | 91精品国产品国语在线不卡 | 精品一区二区在线 | 美日韩一区二区三区 | 日韩在线一区二区三区免费视频 | 亚洲第一页中文字幕 | 一区二区国产精品 | 天天色图 | 久久久久久91精品色婷婷 | 亚洲欧洲国产经精品香蕉网 | 国产视频一区二区 | 欧美日韩精品乱国产538 | 国产高清免费 | 精品视频在线观看免费 | 精品亚洲一区二区三区 | 日韩欧美综合 | 国产高清免费视频 | www日韩| 亚洲欧洲精品成人久久曰 | 精品一区二区三区免费毛片爱 |