簡體   English   中英

綁定到Array.includes [javascript]

[英]binding to Array.includes [javascript]

我很難在array1中是否存在array2中的任何元素的查找中使用它:

array2 = [].includes.bind([1,2,3]);
array2(1);   // returns true
array2(9);   // returns false

[5,6,7,8,9].some(array2);        // returns false  GOOD
[3,6,7,8,9].some(array2);        // returns true   GOOD
[6,7,8,9,3].some(array2);        // returns false  OOPS!

[6,7,8,9,3].some(function(i){return array2(i)});  //returns true

顯然,我知道該問題的一種解決方案,但是我想知道為什么[...].some(array2)不能完全正常工作。

[6,7,8,9,3].some(array2)不起作用,因為Array.prototype.some調用檢查函數具有3個參數:值,索引,整個數組,而Array.prototype.includes需要2個參數 第二個參數是從中開始搜索的索引。

arr.includes(searchElement,fromIndex)

因此,每個下一個調用都會詢問您的第一個數組是否包括從給定索引開始的給定值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM