JavaScript中Object.assign()方法详解及ES6新特性解析

作者:函数茶馆

时间:2026-10-23

浏览:600

本文详细解析JavaScript中Object.assign()方法,用于将多个对象合并为独立对象。同时介绍ES6新增的Set和Map数据结构:Set自动过滤重复值,适用于数组去重;Map支持任意类型作为Key,解决传统对象Key仅限字符串的限制,提升开发灵活性。

文章目录

Object.assign()方法详解

接下来介绍ES6在Object对象上新增的assign()方法。

该方法的主要作用是将多个对象合并生成一个全新的独立对象。

调用语法为:Object.assign(目标对象,源对象1, 源对象2, ...)。

对象合并示例


let user = {name:'无敌人',age:19};
 let page = {pageSize:10,currentPage:1};
 let newObj = {};

 Object.assign(newObj,user,page);

Object.assign()方法详解

ES6 Set与Map数据结构

ES6标准引入了许多新特性,例如数组相关的Set和Map类型。

Set的功能与传统ES5中的Array数组类似,用于存储数据。其显著特点是自动去除集合中重复的值。

在实际开发场景中,Set常被用于实现数据去重功能。

具体使用方式为:let setList = new Set({...});

Set去重应用


let setList = new Set(['星期一','星期二','星期三','星期三'])
console.log(setList);

执行结果示例输出为:{"星期一", "星期二", "星期三"}。

从结果可以看出,重复输入的“星期三”已被自动过滤。

Map类型解决了以往对象Key必须为字符串的限制。Map允许使用对象、数组或复杂类型作为Key,同时也具备去重特性(除非空对象{}的Key,因它们在内存栈中的地址不同)。

Map的定义方法为:let mapList = new Map([[key, value], [...]]);

Map复杂Key应用


//定义昨晚Key的对象
let setList = new Set(['星期一','星期二','星期三','星期三']);
let user = {'name':'无敌人'};
let item = [1,2,3];

let mapList = new Map([
     [setList,'我是value1'],
     ['name','我是value2'],
     [user,'我是value3'],
     [item,'我是value4']
    ]);
console.log(mapList);

Object.assign()方法详解

以上就是关于JavaScript中Object.assign()方法合并对象及ES6相关特性的介绍,更多内容可参考本站相关文章。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章