久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  千鋒問問  > js去重的方法有哪些

js去重的方法有哪些

js去重 匿名提問者 2023-08-03 20:00:21

js去重的方法有哪些

我要提問

推薦答案

  在JavaScript中,數(shù)組去重有多種方法。以下是三種常用的去重方法:

千鋒教育

  1. 使用Set數(shù)據(jù)結(jié)構(gòu):

  Set是一種ES6中新增的數(shù)據(jù)結(jié)構(gòu),它可以存儲(chǔ)唯一的值,因此可以用來實(shí)現(xiàn)數(shù)組去重。

function removeDuplicatesWithSet(arr) {
const uniqueArray = [...new Set(arr)];
return uniqueArray;
}

const originalArray = [1, 2, 2, 3, 4, 4, 5];
const uniqueArray = removeDuplicatesWithSet(originalArray);
console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

 

  2. 使用Array.filter()方法:

  `Array.filter()`方法可以用于過濾數(shù)組中的元素,我們可以結(jié)合`indexOf()`方法來篩選出數(shù)組中第一次出現(xiàn)的元素,從而實(shí)現(xiàn)去重。

function removeDuplicatesWithFilter(arr) {
return arr.filter((value, index, self) => self.indexOf(value) === index);
}

const originalArray = [1, 2, 2, 3, 4, 4, 5];
const uniqueArray = removeDuplicatesWithFilter(originalArray);
console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

 

  3. 使用Object鍵值對(duì):

  通過將數(shù)組元素作為對(duì)象的鍵名,利用對(duì)象鍵名的唯一性實(shí)現(xiàn)數(shù)組去重。

function removeDuplicatesWithObject(arr) {
const obj = {};
arr.forEach(item => obj[item] = true);
return Object.keys(obj).map(Number);
}

const originalArray = [1, 2, 2, 3, 4, 4, 5];
const uniqueArray = removeDuplicatesWithObject(originalArray);
console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

 

  以上三種方法都可以實(shí)現(xiàn)數(shù)組去重,你可以根據(jù)項(xiàng)目需求和個(gè)人喜好選擇最合適的方法。

其他答案

  •   在JavaScript中,有多種方法可以實(shí)現(xiàn)數(shù)組去重。以下是三種常用的去重方法:

      1. 使用Set數(shù)據(jù)結(jié)構(gòu):

      Set是一種ES6中新增的數(shù)據(jù)結(jié)構(gòu),它可以存儲(chǔ)唯一的值,因此可以用來實(shí)現(xiàn)數(shù)組去重。

      function removeDuplicatesWithSet(arr) {

      const uniqueArray = Array.from(new Set(arr));

      return uniqueArray;

      }

      const originalArray = [1, 2, 2, 3, 4, 4, 5];

      const uniqueArray = removeDuplicatesWithSet(originalArray);

      console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

      2. 使用Array.reduce()方法:

      `Array.reduce()`方法可以用來迭代數(shù)組,并將結(jié)果累積到一個(gè)值中。我們可以利用它來實(shí)現(xiàn)數(shù)組去重。

      function removeDuplicatesWithReduce(arr) {

      return arr.reduce((acc, current) => {

      if (!acc.includes(current)) {

      acc.push(current);

      }

      return acc;

      }, []);

      }

      const originalArray = [1, 2, 2, 3, 4, 4, 5];

      const uniqueArray = removeDuplicatesWithReduce(originalArray);

      console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

      3. 使用for循環(huán)和indexOf()方法:

      通過遍歷數(shù)組,利用`indexOf()`方法判斷元素是否在新數(shù)組中已存在,從而實(shí)現(xiàn)數(shù)組去重。

      function removeDuplicatesWithForLoop(arr) {

      const uniqueArray = [];

      for (let i = 0; i < arr.length; i++) {

      if (uniqueArray.indexOf(arr[i]) === -1) {

      uniqueArray.push(arr[i]);

      }

      }

      return uniqueArray;

      }

      const originalArray = [1, 2, 2, 3, 4, 4, 5];

      const uniqueArray = removeDuplicatesWithForLoop(originalArray);

      console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

      以上三種方法都能有效地實(shí)現(xiàn)數(shù)組去重,你可以根據(jù)具體場(chǎng)景和數(shù)組規(guī)模選擇最適合的方法。

  •   在JavaScript中,數(shù)組去重可以通過多種方法實(shí)現(xiàn)。以下是三種常用的去重方法:

      1. 使用Set數(shù)據(jù)結(jié)構(gòu):

      Set是一種ES6中引入的數(shù)據(jù)結(jié)構(gòu),它可以存儲(chǔ)唯一的值,因此可以用來實(shí)現(xiàn)數(shù)組去重。

      function removeDuplicatesWithSet(arr) {

      const uniqueArray = Array.from(new Set(arr));

      return uniqueArray;

      }

      const originalArray = [1, 2, 2, 3, 4, 4, 5];

      const uniqueArray = removeDuplicatesWithSet(originalArray);

      console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

      2. 使用Array.indexOf()方法:

      通過遍歷數(shù)組并利用`indexOf()`方法來判斷元素是否在新數(shù)組中已存在,從而實(shí)現(xiàn)數(shù)組去重。

      function removeDuplicatesWithIndexOf(arr) {

      const uniqueArray = [];

      for (let i = 0; i < arr.length; i++) {

      if (uniqueArray.indexOf(arr[i]) === -1) {

      uniqueArray.push(arr[i]);

      }

      }

      return uniqueArray;

      }

      const originalArray = [1, 2, 2, 3, 4, 4, 5];

      const uniqueArray = removeDuplicatesWithIndexOf(originalArray);

      console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

      3. 使用Array.filter()方法:

      `Array.filter()`方法可以用來過濾數(shù)組中的元素,我們可以結(jié)合`indexOf()`方法來篩選出數(shù)組中第一次出現(xiàn)的元素,從而實(shí)現(xiàn)去重。

      function removeDuplicatesWithFilter(arr) {

      return arr.filter((value, index, self) => self.indexOf(value) === index);

      }

      const originalArray = [1, 2, 2, 3, 4, 4, 5];

      const uniqueArray = removeDuplicatesWithFilter(originalArray);

      console.log(uniqueArray); // 輸出: [1, 2, 3, 4, 5]

      以上三種方法都能有效地實(shí)現(xiàn)數(shù)組去重,你可以根據(jù)具體情況選擇最適合的方法。