日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

我們可以通過合并兩個(gè)數(shù)組并刪除重復(fù)元素來獲得兩個(gè)數(shù)組的并集,并且并集給出兩個(gè)數(shù)組中唯一的元素。

在本教程中,我們將學(xué)習(xí)使用各種方法計(jì)算 JavaScript 數(shù)組的并集。

使用 set() 數(shù)據(jù)結(jié)構(gòu)

第一種方法是使用 set() 數(shù)據(jù)結(jié)構(gòu)。集合數(shù)據(jù)結(jié)構(gòu)只能包含唯一元素。我們可以將兩個(gè)數(shù)組的所有元素添加到集合中,并從集合的元素創(chuàng)建一個(gè)新數(shù)組以創(chuàng)建并集。

語法

用戶可以按照下面的語法使用集合數(shù)據(jù)結(jié)構(gòu)來計(jì)算 JavaScript 數(shù)組的并集。

let union = [...new Set([...array1, ...array2])];

登錄后復(fù)制

在上面的語法中,我們使用擴(kuò)展運(yùn)算符連接兩個(gè)數(shù)組并從結(jié)果數(shù)組創(chuàng)建一個(gè)新集合。之后,我們?cè)俅问褂谜归_運(yùn)算符將集合的元素添加到數(shù)組中。

示例 1

在下面的示例中,array1 和 array2 包含一些公共數(shù)字。首先,我們使用擴(kuò)展運(yùn)算符聯(lián)系 array1 和 array2。之后,我們使用 new Set() 構(gòu)造函數(shù)從結(jié)果數(shù)組創(chuàng)建一個(gè)集合。該集合只能包含唯一的元素。因此,它包含兩個(gè)數(shù)組并集中的所有元素。

之后,我們使用擴(kuò)展運(yùn)算符將集合的所有元素添加到聯(lián)合數(shù)組中。在輸出中,用戶可以觀察兩個(gè)數(shù)組的并集。

<html>
<body>
   <h3> Using the <i> set() </i> data structure to compute the union of two arrays in JavaScript </h3>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      
      // using the set() to compute union
      let array1 = [1, 2, 3, 4, 5];
      let array2 = [4, 5, 6, 7, 8];
      let union = [...new Set([...array1, ...array2])];
      output.innerHTML = "The first array is " + array1 + "<br>";
      output.innerHTML += "The second array is " + array2 + "<br>";
      output.innerHTML += "The union of the two arrays is " + union + "<br>";
   </script>
</body>
</html>

登錄后復(fù)制

使用對(duì)象計(jì)算 JavaScript 數(shù)組的并集

在這種方法中,我們可以添加數(shù)組值作為對(duì)象屬性。該對(duì)象始終包含唯一的鍵。因此,我們可以使用數(shù)組元素作為對(duì)象的鍵以及該特定鍵的任何值。之后,我們可以獲取所有對(duì)象鍵來獲取數(shù)組的并集。

語法

用戶可以按照下面的語法使用對(duì)象來計(jì)算數(shù)組的并集。

for () {
   union[names1[i]] = 1;
}
for (let key in the union) {
   finalArray.push(key);
}

登錄后復(fù)制

在上面的語法中,首先,我們將所有數(shù)組元素作為對(duì)象的鍵推送。之后,我們從對(duì)象中獲取鍵并將它們添加到數(shù)組中。

示例 2

在下面的示例中,我們有兩個(gè)名為names1和names2的數(shù)組。我們添加第一個(gè)數(shù)組的元素作為對(duì)象的鍵。之后,我們添加第二個(gè)數(shù)組的元素作為對(duì)象的鍵。

接下來,我們遍歷對(duì)象,獲取對(duì)象的鍵并將其推送到 FinalArray。 FinalArray 包含名稱 1 和名稱 2 數(shù)組的并集。

<html>
<body>
   <h3> Using the <i> object </i> to compute the union of two arrays in JavaScript </h3>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      
      // using the object to compute the union of two arrays
      let names1 = ["John", "Peter", "Sally", "Jane", "Mark"];
      let names2 = ["Peter", "Sally", "Greg"];
      let union = {};
      
      //Add all the elements of the first array to the object
      for (let i = 0; i < names1.length; i++) {
         union[names1[i]] = 1;
      }
      for (let i = 0; i < names2.length; i++) {
         union[names2[i]] = 1;
      }
      
      //Convert the object to an array
      let finalArray = [];
      for (let key in union) {
         finalArray.push(key);
      }
      output.innerHTML = "First array: " + JSON.stringify(names1) + "<br>";
      output.innerHTML += "Second array: " + JSON.stringify(names2) + "<br>";
      output.innerHTML += "The union of the two arrays: " + JSON.stringify(finalArray) + "<br>";
   </script>
</body>
</html>

登錄后復(fù)制

使用 Filter() 和 Concat() 方法

concat() 方法用于合并兩個(gè)或多個(gè)數(shù)組。我們可以使用 filter() 方法合并兩個(gè)數(shù)組后過濾唯一元素。這樣,我們就可以使用 concat() 和 filter() 方法來計(jì)算數(shù)組的并集。

語法

用戶可以按照下面的語法使用filter()和concat()方法來計(jì)算數(shù)組的并集。

let cities = cities1.concat(cities2);
cities.sort();
let unionCities = cities.filter((value, index) => cities.indexOf(value) === index);

登錄后復(fù)制

在上面的語法中,我們首先合并兩個(gè)數(shù)組,對(duì)它們進(jìn)行排序,然后使用filter()方法過濾唯一元素。

示例 3

在下面的示例中,city1 和 citites2 數(shù)組包含一些城市名稱,其中一些是常見的。城市數(shù)組包含兩個(gè)數(shù)組的數(shù)組元素。

之后,我們使用 sort() 方法對(duì)城市數(shù)組進(jìn)行排序。接下來,我們使用 filter() 方法從城市數(shù)組中過濾唯一值。在filter()方法中,我們將回調(diào)函數(shù)作為參數(shù)傳遞,該函數(shù)檢查當(dāng)前城市的索引是否等于當(dāng)前索引以刪除重復(fù)元素。

<html>
<body>
   <h3> Using the <i> filter() and concat() methods </i> to compute the union of two arrays in JavaScript </h3>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      let cities1 = ["Surat", "Ahmedabad", "Rajkot", "Vadodara", "Pune"];
      let cities2 = ["Mumbai", "Pune", "Nagpur", "Nashik", "Rajkot"];
      let cities = cities1.concat(cities2);
      cities.sort();
      
      // filter unique values in the array
      let unionCities = cities.filter((value, index) => cities.indexOf(value) === index);
      output.innerHTML = "First array: " + JSON.stringify(cities1) + "<br>";
      output.innerHTML += "Second array: " + JSON.stringify(cities2) + "<br>";
      output.innerHTML += "The union of the two arrays: " + JSON.stringify(unionCities) + "<br>";
   </script>
</body>
</html>

登錄后復(fù)制

結(jié)論

用戶學(xué)習(xí)了在 JavaScript 中計(jì)算數(shù)組并??集的三種不同方法。第一種方法需要使用集合數(shù)據(jù)結(jié)構(gòu)的線性代碼。第二種方法使用對(duì)象,第三種方法使用 filter() 和 concat() 方法。

以上就是如何計(jì)算 JavaScript 數(shù)組的并集?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注www.92cms.cn其它相關(guān)文章!

分享到:
標(biāo)簽:javascript 數(shù)組 計(jì)算
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績?cè)u(píng)定