亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

es6如何檢測兩個數組是否有相同項

發布時間:2022-10-18 17:10:13 來源:億速云 閱讀:404 作者:iii 欄目:web開發

這篇“es6如何檢測兩個數組是否有相同項”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“es6如何檢測兩個數組是否有相同項”文章吧。

檢測步驟:1、將兩個數組都轉換為set集合類型,語法“new Set(數組)”;2、獲取兩個集合的交集,語法“new Set([...集合1].filter(x=>集合2.has(x)))”,交集元素會被包含在一個set集合中返回;3、將包含交集元素的set集合轉為數組類型,語法“Array.from(集合)”;4、判斷交集數組是否為空數組,如果是則沒有相同項,反之則有相同項。

檢測兩個數組是否有相同項,就是檢測兩個數組是否有交集。

檢測思想:

  • 獲取兩個數組的交集

  • 判斷該交集是否為空,如果為空則沒有相同項,如果不為空則有相同項。

實現步驟:

1、獲取兩個數組的交集

在es6中,可以利用set對象的has() 方法配合數組的filter()來求兩個數組的交集。

  • Set是ES6新提供的數據結構,類似于數組,但是本身沒有重復值。利用這一特性,我們可以將數組轉為Set類型進行去重,然后使用Array.from方法將其再轉為數組。

  • Set has() 方法指示 Set 對象是否包含指定的值。如果指定的值存在,則返回真,否則返回假。

注:想要使用has()方法,需要先將數組轉為set集合類型

let a=[1, 2, 3];
let b=[3, 5, 2];
newA = new Set(a);
newB = new Set(b); 
let intersectionSet = new Set([...newA].filter(x => newB.has(x)));
console.log(intersectionSet);

es6如何檢測兩個數組是否有相同項

可以看出此時,交集元素被包含在一個set集合中返回

2、將包含交集元素的set集合轉為數組類型

在es6中,可以利用Array.from方法將集合轉為數組類型

  • Array.from方法用于將兩類對象轉為真正的數組:類似數組的對象(array-like object)和可遍歷(iterable)的對象(包括 ES6 新增的數據結構 Set 和 Map)。

let intersectionSet = Array.from(new Set([...newA].filter(x => newB.has(x))));
console.log(intersectionSet);

es6如何檢測兩個數組是否有相同項

3、判斷交集數組是否為空數組

  • 如果為空數組,則沒有相同項

  • 如果不為空數組,則有相同項

if(intersectionSet==[]){
	console.log("沒有相同項");
}else{
	console.log("有相同項");
}

es6如何檢測兩個數組是否有相同項

以上就是關于“es6如何檢測兩個數組是否有相同項”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

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

es6
AI

清苑县| 法库县| 嘉定区| 阿合奇县| 灌云县| 金门县| 射阳县| 南汇区| 盖州市| 土默特右旗| 江城| 云龙县| 江门市| 赤壁市| 嘉禾县| 交城县| 道孚县| 正宁县| 平潭县| 哈巴河县| 乐清市| 岳阳县| 盈江县| 马边| 梅河口市| 张家口市| 惠安县| 武夷山市| 宣恩县| 栖霞市| 醴陵市| 兖州市| 通州市| 襄汾县| 本溪| 曲阳县| 武穴市| 惠东县| 肇东市| 汽车| 常德市|