91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ES6中includes()方法怎么用

發布時間:2022-03-24 14:13:32 來源:億速云 閱讀:502 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關ES6中includes()方法怎么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

includes()

ES5中,我們常用數組的indexOf方法,檢查是否包含某個值。indexOf方法有兩個缺點,一是不夠語義化,它的含義是找到參數值的第一個出現位置,所以要去比較是否不等于 -1 ,表達起來不夠直觀。二是,它內部使用嚴格相當運算符( === )進行判斷,這會導致對NaN的誤判。

[NaN].indexOf(NaN)  
// -1  
includes使用的是不一樣的判斷算法,就沒有這個問題。  
[NaN].includes(NaN)  
// true

Array.prototype.includes方法返回一個布爾值,表示某個數組是否包含給定的值,與字符串的includes方法類似。該方法屬于 ES7 ,但 Babel 轉碼器已經支持。

[1, 2, 3].includes(2); // true  
[1, 2, 3].includes(4); // false  
[1, 2, NaN].includes(NaN); // true

該方法的第二個參數表示搜索的起始位置,默認為 0 。如果第二個參數為負數,則表示倒數的位置,如果這時它大于數組長度(比如第二個參數為 -4 ,但數組長度為 3 ),則會重置為從 0 開始。

[1, 2, 3].includes(3, 3); // false  
[1, 2, 3].includes(3, -1); // true

下面代碼用來檢查當前環境是否支持該方法,如果不支持,部署一個簡易的替代版本。

const contains = (() =>  
Array.prototype.includes  
    ? (arr, value) => arr.includes(value)  
    : (arr, value) => arr.some(el => el === value)  
)();  


contains(["foo", "bar"], "baz"); // => false

另外, Map 和 Set 數據結構有一個has方法,需要注意與includes區分。

Map 結構的has方法,是用來查找鍵名的,比如Map.prototype.has(key)、WeakMap.prototype.has(key)、Reflect.has(target, propertyKey)。

Set 結構的has方法,是用來查找值的,比如Set.prototype.has(value)、WeakSet.prototype.has(value)。

關于“ES6中includes()方法怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

常熟市| 同江市| 徐汇区| 淮北市| 赤壁市| 铜梁县| 德格县| 科尔| 新密市| 和龙市| 沙洋县| 正蓝旗| 松江区| 富民县| 阳东县| 江都市| 揭东县| 喀喇| 垣曲县| 嵩明县| 通海县| 昌图县| 定安县| 怀安县| 武夷山市| 湘阴县| 昌宁县| 米脂县| 滦南县| 苗栗市| 安西县| 隆林| 泸水县| 富民县| 广昌县| 颍上县| 通辽市| 洛隆县| 邵武市| 宕昌县| 漳浦县|