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

資訊專欄INFORMATION COLUMN

ES 6 新特性 Number.isNaN 介紹

EsgynChina / 485人閱讀

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

NaN

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

NaN和自身不相等,乍一看違反直覺,但卻符合IEEE754的規定。IEEE754的委員會成員曾經解釋過將NaN設計為不等的權衡。

isNaN

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

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

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

如果說NaN是JavaScript的一個坑的話,isNaN就是另一個坑了。因為isNaN會先將傳遞給它的對象轉化為數字類型。而我們知道,對于普通的字符串,轉化為數字類型會返回NaN。于是就踩坑了。。。

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

所以說,通常對字符串使用isNaN方法會返回trueisNaN坑爹了——當然,isNaN也許會辯駁說這不是它的坑,這是JavaScript強制類型轉換的坑。

那么,可不可以不做類型轉換直接判斷呢?ES6用Number.isNaN填上了這個坑。Number.isNaN不會轉換對象的類型。

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

ES6的這個新特性,已經被NodeJS和部分瀏覽器所支持。

編撰 SegmentFault

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/78038.html

相關文章

  • ES6 舊瓶

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

    未東興 評論0 收藏0
  • ECMAScript6 特性——“數值的擴展”

    摘要:二進制和八進制表示法提供了二進制和八進制數值的新的寫法,分別用前綴或和或表示。用來檢查是否為有窮以及是否為這兩個新方法只對數值有效,非數值一律返回。引入了和這兩個常量,用來表示這個范圍的上下限。因為有精度限制,超過的次方的值無法精確表示。 1 二進制和八進制表示法 ES6提供了二進制和八進制數值的新的寫法,分別用前綴0b(或0B)和0o(或0O)表示。 console.log(0b10...

    Dean 評論0 收藏0
  • JavaScript值介紹

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

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

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

    godruoyi 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<