ES6 Object的新增方法:处理对象从未如此优雅
🧑🏫 作者:全栈老李
📅 更新时间:2025 年 6 月
🧑💻 适合人群:前端初学者、进阶开发者
🚀 版权:本文由全栈老李原创,转载请注明出处。
大家好,我是全栈老李。今天咱们聊聊ES6中Object的那些新方法——它们就像瑞士军刀,让对象操作变得前所未有的顺手。想象一下,以前你要手动遍历对象属性时那笨拙的样子,现在有了这些方法,简直像开了挂。
一、Object.assign:对象的"复制粘贴"
Object.assign是ES6中最常用的对象方法之一,它的作用就像把多个对象的属性"复制粘贴"到目标对象上。
// 全栈老李示例:Object.assign基础用法
const target = {
a: 1 };
const source1 = {
b: 2 };
const source2 = {
c: 3 };
const result = Object.assign(target, source1, source2);
console.log(result); // { a: 1, b: 2, c: 3 }
console.log(target); // { a: 1, b: 2, c: 3 } —— 注意target也被修改了!
这里有个坑要注意:Object.assign会直接修改第一个参数对象本身!如果你想保留原对象,可以这样:
// 全栈老李提醒:安全的浅拷贝方式
const newObj = Object.assign({
}, target, source1, source2);
使用场景:
- 合并配置对象(比如合并默认配置和用户自定义配置)
- 创建对象的浅拷贝
- 给对象添加多个属性
不过要注意,它只能做浅拷贝。如果属性值是对象,拷贝的是引用:
const obj = {
a: {
b: 1 } };
const copy = Object.assign({
}, obj);
copy.a.b = 2;
console.log(obj.a.b); // 2 —— 原对象也被改了!
二、Object.keys/values/entries:对象的"解剖工具"
这三个方法让遍历对象变得异常简单,它们分别返回对象的键、值、键值对数组。
// 全栈老李示例:对象遍历三件套
const person = {
name:

最低0.47元/天 解锁文章
778

被折叠的 条评论
为什么被折叠?



