国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

ES 6 新特性 Number.isNaN 介紹

EsgynChina / 479人閱讀

摘要:中有一個(gè)特殊的對(duì)象,它表示一個(gè)非法的數(shù)字。這個(gè)對(duì)象十分特殊,它的類型是,屬于原始值,但是和自身不相等。和自身不相等,乍一看違反直覺,但卻符合的規(guī)定。的委員會(huì)成員曾經(jīng)解釋過將設(shè)計(jì)為不等的權(quán)衡。的這個(gè)新特性,已經(jīng)被和部分瀏覽器所支持。

NaN

JavaScript中有一個(gè)特殊的對(duì)象:NaN,它表示一個(gè)非法的數(shù)字(Not-a-Number)。這個(gè)對(duì)象十分特殊,它的類型是number,屬于原始值,但是和自身不相等。即NaN === NaN返回false

NaN和自身不相等,乍一看違反直覺,但卻符合IEEE754的規(guī)定。IEEE754的委員會(huì)成員曾經(jīng)解釋過將NaN設(shè)計(jì)為不等的權(quán)衡。

isNaN

由于NaN的特殊性,我們經(jīng)常需要判斷一個(gè)值是否為NaN,通常我們使用isNaN來判斷,例如:

isNaN(NaN);       // true
isNaN(undefined); // true
isNaN({});        // true

isNaN(true);      // false
isNaN(null);      // false
isNaN(1);         // false

如果說NaN是JavaScript的一個(gè)坑的話,isNaN就是另一個(gè)坑了。因?yàn)?b>isNaN會(huì)先將傳遞給它的對(duì)象轉(zhuǎn)化為數(shù)字類型。而我們知道,對(duì)于普通的字符串,轉(zhuǎn)化為數(shù)字類型會(huì)返回NaN。于是就踩坑了。。。

isNaN("1");            // fales "1" 被轉(zhuǎn)化為數(shù)字 1,因此返回false
isNaN("SegmentFault"); // true "SegmentFault" 被轉(zhuǎn)化成數(shù)字 NaN

所以說,通常對(duì)字符串使用isNaN方法會(huì)返回trueisNaN坑爹了——當(dāng)然,isNaN也許會(huì)辯駁說這不是它的坑,這是JavaScript強(qiáng)制類型轉(zhuǎn)換的坑。

那么,可不可以不做類型轉(zhuǎn)換直接判斷呢?ES6用Number.isNaN填上了這個(gè)坑。Number.isNaN不會(huì)轉(zhuǎn)換對(duì)象的類型。

Number.isNaN("SegmentFault");  // false

ES6的這個(gè)新特性,已經(jīng)被NodeJS和部分瀏覽器所支持。

編撰 SegmentFault

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/78038.html

相關(guān)文章

  • ES6 舊瓶

    摘要:本文是系列的第二篇,前一篇走馬觀花概要介紹了,這一篇標(biāo)題之所以叫舊瓶新酒,是想介紹那些原來就被廣泛使用的對(duì)象,例如,對(duì)這些對(duì)象擴(kuò)展了一些很有用的新方法。用于監(jiān)聽取消監(jiān)聽數(shù)組的變化,指定回調(diào)函數(shù)。在中已被建議撤銷。 本文是 ES6 系列的第二篇,前一篇《ES6 走馬觀花》概要介紹了ES6,這一篇標(biāo)題之所以叫舊瓶新酒,是想介紹那些原來就被廣泛使用的JS對(duì)象,例如String、Array,E...

    未東興 評(píng)論0 收藏0
  • ECMAScript6 特性——“數(shù)值的擴(kuò)展”

    摘要:二進(jìn)制和八進(jìn)制表示法提供了二進(jìn)制和八進(jìn)制數(shù)值的新的寫法,分別用前綴或和或表示。用來檢查是否為有窮以及是否為這兩個(gè)新方法只對(duì)數(shù)值有效,非數(shù)值一律返回。引入了和這兩個(gè)常量,用來表示這個(gè)范圍的上下限。因?yàn)橛芯认拗疲^的次方的值無法精確表示。 1 二進(jìn)制和八進(jìn)制表示法 ES6提供了二進(jìn)制和八進(jìn)制數(shù)值的新的寫法,分別用前綴0b(或0B)和0o(或0O)表示。 console.log(0b10...

    Dean 評(píng)論0 收藏0
  • JavaScript值介紹

    摘要:的數(shù)字類型是基于標(biāo)準(zhǔn)實(shí)現(xiàn)的,該標(biāo)準(zhǔn)也被稱為浮點(diǎn)數(shù)使用的是雙精度即位進(jìn)制由于數(shù)字值可以使用對(duì)象進(jìn)行封裝,因此數(shù)字值可以調(diào)用中的方法。 數(shù)組 和其他語(yǔ)言不同,在JavaScript中,數(shù)組可以擁有不同值類型,可以使字符串,數(shù)字,對(duì)象,還可以是數(shù)組(多維數(shù)組就是這樣形成的). 聲明數(shù)組后,可以直接通過索引的方式進(jìn)行賦值: var arr = []; arr.length; //0 ...

    hsluoyz 評(píng)論0 收藏0
  • ES6(2)-各種類型的擴(kuò)展(字符串、正則、數(shù)值、函數(shù))

    摘要:返回布爾值,表示參數(shù)字符串是否在原字符串的頭部。模板字符串之中還能調(diào)用函數(shù)。其他對(duì)字符串還有許多擴(kuò)展,例如對(duì)字符表示的擴(kuò)充以及為字符串提供了遍歷方法詳情請(qǐng)點(diǎn)擊正則的擴(kuò)展構(gòu)造函數(shù)在中,構(gòu)造函數(shù)的參數(shù)有兩種情況。 ES6對(duì)各種基本類型都做了擴(kuò)展,內(nèi)容有些多,本章節(jié)挑選比較重要的擴(kuò)展說明。 1 字符串的擴(kuò)展 1.1 includes(), startsWith(), endsWith() 傳...

    godruoyi 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<