首页 > 其他分享 >js 两个数组合并后去重

js 两个数组合并后去重

时间:2025-01-02 09:44:15浏览次数:1  
标签:... Set console 元素 合并 js numbers 数组

function mergeUnique(arr1, arr2) {
    return [...new Set([...arr1, ...arr2])];
}
 
// 示例使用
const array1 = [1, 2, 3];
const array2 = [2, 3, 4];
const mergedArray = mergeUnique(array1, array2);
console.log(mergedArray); // 输出: [1, 2, 3, 4]

在这个例子中,mergeUnique函数接收两个数组arr1arr2作为参数,使用扩展运算符...将它们合并,然后通过new Set()去除重复的元素,最后再次使用扩展运算符...将Set对象转换回数组。这样得到的数组就是合并后去重的结果。

 

 

‌new Set()是JavaScript中用于创建一个新的集合对象的构造函数,该集合中的元素是唯一的,即不允许重复的值‌‌
。Set对象可以容纳任何类型的值,包括对象、原始值、NaN、undefined和null等‌

使用方法
‌创建Set对象‌:可以通过new Set()创建一个空的Set对象,或者传入一个数组或类数组对象来初始化Set对象,Set会自动去除重复的值‌

‌添加元素‌:使用add(value)方法向Set中添加元素。例如:set.add(4)‌
‌删除元素‌:使用delete(value)方法从Set中删除元素。例如:set.delete(2)‌
‌检查元素是否存在‌:使用has(value)方法检查Set中是否包含某个元素。例如:set.has(3)‌
‌获取元素数量‌:使用size属性获取Set中元素的数量。例如:set.size‌
‌遍历元素‌:可以使用for...of循环或Array.from()方法将Set转换为数组后进行遍历‌
特性
‌唯一性‌:Set中的元素是唯一的,每个值只能出现一次。
‌类型多样性‌:Set可以容纳任何类型的值,包括对象、原始值等。
‌有序性‌:Set保持元素的插入顺序。

 

// 创建一个空的Set对象
const mySet = new Set();

// 使用数组初始化Set对象
const numbers = new Set([1, 2, 3, 4, 5]);

// 向Set中添加元素
numbers.add(6);

// 检查元素是否存在
console.log(numbers.has(3)); // 输出: true
console.log(numbers.has(6)); // 输出: true
console.log(numbers.has('a')); // 输出: false

// 删除元素
numbers.delete(3);
console.log(numbers.has(3)); // 输出: false

// 获取Set的大小
console.log(numbers.size); // 输出: 4

 

标签:...,Set,console,元素,合并,js,numbers,数组
From: https://www.cnblogs.com/handsomeziff/p/18646827

相关文章

  • 请问JS中的数组和函数在内存中是如何存储的?
    在JavaScript中,数组和函数在内存中的存储方式主要涉及堆内存(HeapMemory)和栈内存(StackMemory)的使用。这两种数据结构在内存中有着不同的特性和用途。1.数组在内存中的存储数组在JavaScript中是一种特殊的对象,用于表示有序的元素集合。由于数组的大小是可变的,且其元素可以是任......
  • 使用js判断给定的一组数字是否连续
    在前端开发中,你可以使用JavaScript来判断给定的一组数字是否连续。以下是一个简单的函数,它接受一个数字数组作为参数,并返回一个布尔值,指示这些数字是否是连续的。functionisConsecutive(arr){//首先对数组进行排序arr.sort((a,b)=>a-b);//遍历数组,检查......
  • 使用js写一个方法判断给定的数组是一维还是多维
    在JavaScript中,你可以通过递归地检查数组中的每个元素来判断一个数组是一维还是多维。以下是一个示例函数,用于判断给定的数组是一维还是多维:functionisArrayDimensional(arr){//基础情况:如果数组为空,或者数组中的元素都不是数组,那么它是一维数组if(arr.length===......
  • 在NodeJs中如何启用HTTP/2.0?
    在Node.js中启用HTTP/2.0通常涉及使用Node.js内置的http2模块。以下是一个简单的示例,展示了如何创建一个HTTP/2服务器:consthttp2=require('http2');constfs=require('fs');constserver=http2.createSecureServer({key:fs.readFileSync('path/to/private-key.pem'......
  • 通过 Go 调试器dlv调试二维数组
    背景在Go语言的开发过程中,调试是一个重要环节,它能够帮助开发者更清晰地理解程序的执行过程,尤其是在处理复杂数据结构时。例如,二维数组常用于存储和操作具有行列结构的数据,而如何调试这些数据结构,以确保程序按预期工作,则是一个常见的开发挑战。在本例中,开发者使用Go语言的调......
  • 如何防止NodeJS的程序崩溃?
    防止Node.js程序崩溃的方法可以从多个方面入手,以下是一些建议:错误处理:使用try-catch语句包裹可能抛出异常的代码块,以便捕获并处理这些异常,防止它们导致程序崩溃。对于异步操作,如读取文件或数据库查询,确保在回调函数或Promise链中处理错误。为事件处理器添加错误处理逻辑,特......
  • 在NodeJS中如何实现http2推送信息?
    在Node.js中实现HTTP/2推送,你首先需要一个支持HTTP/2的服务器。Node.js从v8.4.0开始内置了对HTTP/2的支持。以下是一个简单的Node.jsHTTP/2服务器示例,该服务器使用HTTP/2的服务器推送功能:consthttp2=require('http2');constfs=require('fs');constpath=require('pat......
  • 如何使用NodeJS创建Web服务器?
    要使用Node.js创建一个简单的Web服务器,你需要使用Node.js的内置模块http。下面是一个简单的示例,展示如何使用这个模块来创建一个基本的Web服务器:安装Node.js:首先,确保你已经在你的计算机上安装了Node.js。你可以从Node.js官网下载并安装它。2.创建服务器文件:创建一个新的Jav......
  • 在NodeJS中内置的fs模块有哪几部分组成?
    在Node.js中,内置的fs模块(文件系统模块)主要由以下几部分组成:文件读取:fs.readFile(file[,options],callback):异步读取文件内容。fs.readFileSync(file[,options]):同步读取文件内容,返回文件数据。文件写入:fs.writeFile(file,data[,options],callback):异步写......
  • 两个NodeJS程序之间如何交互?
    两个Node.js程序之间的交互可以通过多种方式实现,这些方式主要依赖于它们之间的通信需求和环境配置。以下是一些常见的交互方法:HTTP请求和响应:Node.js程序可以作为HTTP服务器,接收和响应来自其他Node.js程序(或任何HTTP客户端)的请求。使用Express、Koa等框架可以简化HTTP服务器......