!newB.has(x)))”,差集元素會(huì)被包含在一個(gè)set集合中返回;3、利用Array.from將集合轉(zhuǎn)為數(shù)組類(lèi)型,語(yǔ)法“Array.from(集合)”。" />

亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

首頁(yè) web前端 前端問(wèn)答 es6怎么找出2個(gè)數(shù)組中不同項(xiàng)

es6怎么找出2個(gè)數(shù)組中不同項(xiàng)

Nov 01, 2022 pm 06:07 PM
es6 es6數(shù)組

步驟:1、將兩個(gè)數(shù)組分別轉(zhuǎn)為set類(lèi)型,語(yǔ)法“newA=new Set(a);newB=new Set(b);”;2、利用has()和filter()求差集,語(yǔ)法“new Set([...newA].filter(x =>!newB.has(x)))”,差集元素會(huì)被包含在一個(gè)set集合中返回;3、利用Array.from將集合轉(zhuǎn)為數(shù)組類(lèi)型,語(yǔ)法“Array.from(集合)”。

es6怎么找出2個(gè)數(shù)組中不同項(xiàng)

本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。

找出2個(gè)數(shù)組中不同項(xiàng),就是獲取兩個(gè)數(shù)組的差集。

在es6中,可以借助set對(duì)象的has()方法來(lái)求兩個(gè)數(shù)組的差集。

實(shí)現(xiàn)步驟:

步驟1、將兩個(gè)數(shù)組分別轉(zhuǎn)為set類(lèi)型

let a=[1, 2, 3];
let b=[3, 5, 2];
newA = new Set(a);
newB = new Set(b);

1.png

步驟2:求差集

利用set對(duì)象的has() 方法配合數(shù)組的filter()來(lái)求兩個(gè)數(shù)組的差集。

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

  • 而filter()方法用于過(guò)濾數(shù)組,返回符合條件(為真)的元素。

實(shí)現(xiàn)代碼

let a=[1, 2, 3];
let b=[3, 5, 2];
newA = new Set(a);
newB = new Set(b); 
console.log(newA);
console.log(newB);
let differenceABSet = new Set([...newA].filter(x => !newB.has(x)));
console.log("差集為:");
console.log(differenceABSet);

2.png

可以看出此時(shí),差集元素被包含在一個(gè)set集合中返回,我們可以將其轉(zhuǎn)為數(shù)組類(lèi)型。

步驟3:利用Array.from方法將集合轉(zhuǎn)為數(shù)組類(lèi)型

let a=[1, 2, 3];
let b=[3, 5, 2];
newA = new Set(a);
newB = new Set(b); 
console.log(newA);
console.log(newB);
let differenceABSet = Array.from(new Set([...newA].filter(x => !newB.has(x))));
console.log("差集為:");
console.log(differenceABSet);

3.png

說(shuō)明:Array.from方法用于將兩類(lèi)對(duì)象轉(zhuǎn)為真正的數(shù)組:類(lèi)似數(shù)組的對(duì)象(array-like object)和可遍歷(iterable)的對(duì)象(包括 ES6 新增的數(shù)據(jù)結(jié)構(gòu) Set 和 Map)。

擴(kuò)展知識(shí):求并集/交集

let a = new Set([1, 2, 3]);
let b = new Set([3, 5, 2]); 

// 并集
let unionSet = new Set([...a, ...b]);
//[1,2,3,5]

// ab交集
let intersectionSet = new Set([...a].filter(x => b.has(x)));

【相關(guān)推薦:javascript視頻教程、web前端

以上是es6怎么找出2個(gè)數(shù)組中不同項(xiàng)的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

熱門(mén)話(huà)題

Laravel 教程
1597
29
PHP教程
1488
72
ES6怎么求數(shù)組反轉(zhuǎn) ES6怎么求數(shù)組反轉(zhuǎn) Oct 26, 2022 pm 06:19 PM

在ES6中,可以利用數(shù)組對(duì)象的reverse()方法來(lái)實(shí)現(xiàn)數(shù)組反轉(zhuǎn),該方法用于顛倒數(shù)組中元素的順序,將最后一個(gè)元素放在第一位,而第一個(gè)元素放在最后,語(yǔ)法“array.reverse()”。reverse()方法會(huì)修改原始數(shù)組,如果不想修改需要配合擴(kuò)展運(yùn)算符“...”使用,語(yǔ)法“[...array].reverse()”。

async是es6還是es7的 async是es6還是es7的 Jan 29, 2023 pm 05:36 PM

async是es7的。async和await是ES7中新增內(nèi)容,是對(duì)于異步操作的解決方案;async/await可以說(shuō)是co模塊和生成器函數(shù)的語(yǔ)法糖,用更加清晰的語(yǔ)義解決js異步代碼。async顧名思義是“異步”的意思,async用于聲明一個(gè)函數(shù)是異步的;async和await有一個(gè)嚴(yán)格規(guī)定,兩者都離不開(kāi)對(duì)方,且await只能寫(xiě)在async函數(shù)中。

小程序?yàn)槭裁匆獙s6轉(zhuǎn)es5 小程序?yàn)槭裁匆獙s6轉(zhuǎn)es5 Nov 21, 2022 pm 06:15 PM

為了瀏覽器兼容。ES6作為JS的新規(guī)范,加入了很多新的語(yǔ)法和API,但現(xiàn)代瀏覽器對(duì)ES6新特性支持度不高,所以需將ES6代碼轉(zhuǎn)為ES5代碼。在微信web開(kāi)發(fā)者工具中,會(huì)默認(rèn)使用babel將開(kāi)發(fā)者ES6語(yǔ)法代碼轉(zhuǎn)換為三端都能很好支持的ES5的代碼,幫助開(kāi)發(fā)者解決環(huán)境不同所帶來(lái)的開(kāi)發(fā)問(wèn)題;只需要在項(xiàng)目中配置勾選好“ES6轉(zhuǎn)ES5”選項(xiàng)即可。

es6怎么找出2個(gè)數(shù)組中不同項(xiàng) es6怎么找出2個(gè)數(shù)組中不同項(xiàng) Nov 01, 2022 pm 06:07 PM

步驟:1、將兩個(gè)數(shù)組分別轉(zhuǎn)為set類(lèi)型,語(yǔ)法“newA=new Set(a);newB=new Set(b);”;2、利用has()和filter()求差集,語(yǔ)法“new Set([...newA].filter(x =>!newB.has(x)))”,差集元素會(huì)被包含在一個(gè)set集合中返回;3、利用Array.from將集合轉(zhuǎn)為數(shù)組類(lèi)型,語(yǔ)法“Array.from(集合)”。

es5和es6怎么實(shí)現(xiàn)數(shù)組去重 es5和es6怎么實(shí)現(xiàn)數(shù)組去重 Jan 16, 2023 pm 05:09 PM

es5中可以利用for語(yǔ)句和indexOf()函數(shù)來(lái)實(shí)現(xiàn)數(shù)組去重,語(yǔ)法“for(i=0;i

es6暫時(shí)性死區(qū)是什么意思 es6暫時(shí)性死區(qū)是什么意思 Jan 03, 2023 pm 03:56 PM

在es6中,暫時(shí)性死區(qū)是一個(gè)語(yǔ)法錯(cuò)誤,是指let和const命令使區(qū)塊形成封閉的作用域。在代碼塊內(nèi),使用let/const命令聲明變量之前,該變量都是不可用的,在變量聲明之前屬于該變量的“死區(qū)”;這在語(yǔ)法上,稱(chēng)為“暫時(shí)性死區(qū)”。ES6規(guī)定暫時(shí)性死區(qū)和let、const語(yǔ)句不出現(xiàn)變量提升,主要是為了減少運(yùn)行時(shí)錯(cuò)誤,防止在變量聲明前就使用這個(gè)變量,從而導(dǎo)致意料之外的行為。

es6怎么判斷數(shù)組里總共有多少項(xiàng) es6怎么判斷數(shù)組里總共有多少項(xiàng) Jan 18, 2023 pm 07:22 PM

在es6中,可以利用array對(duì)象的length屬性來(lái)判斷數(shù)組里總共有多少項(xiàng),即獲取數(shù)組中元素的個(gè)數(shù);該屬性可返回?cái)?shù)組中元素的數(shù)目,只需要使用“array.length”語(yǔ)句即可返回表示數(shù)組對(duì)象的元素個(gè)數(shù)的數(shù)值,也就是長(zhǎng)度值。

es6 import會(huì)變量提升嗎 es6 import會(huì)變量提升嗎 Jan 18, 2023 pm 07:44 PM

ES6 import會(huì)產(chǎn)生變量提升的現(xiàn)象。變量提升是將變量聲明提升到它所在作用域的最開(kāi)始的部分。js要經(jīng)歷編譯跟執(zhí)行階段,在編譯階段的時(shí)候,會(huì)搜集所有的變量聲明并且提前聲明變量,而其他的語(yǔ)句都不會(huì)改變他們的順序,因此,在編譯階段的時(shí)候,第一步就已經(jīng)執(zhí)行了,而第二部則是在執(zhí)行階段執(zhí)行到該語(yǔ)句的時(shí)候才執(zhí)行。

See all articles