Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js object.assign()的用法

作者:__龙泉丶聂风   发布日期:2025-06-23   浏览:102

// 示例代码:使用 Object.assign() 方法

// 基本用法:将一个或多个源对象的所有可枚举属性复制到目标对象,并返回目标对象
const target = { a: 1, b: 2 };
const source = { b: 4, c: 5 };

const result = Object.assign(target, source);

console.log(result); // 输出: { a: 1, b: 4, c: 5 }
console.log(target); // 输出: { a: 1, b: 4, c: 5 },注意 target 已经被修改

// 解释说明:
// 1. Object.assign() 的第一个参数是目标对象,后面的参数是源对象。
// 2. 如果源对象中的属性与目标对象中已有的属性同名,则目标对象中的属性值会被覆盖。
// 3. Object.assign() 只会复制源对象自身的并且可枚举的属性。
// 4. 目标对象会被直接修改,同时也会作为函数的返回值。

// 深拷贝示例:Object.assign() 只是浅拷贝,对于嵌套的对象不会进行深拷贝
const obj1 = { x: { y: 1 } };
const obj2 = Object.assign({}, obj1);

obj1.x.y = 2;
console.log(obj2.x.y); // 输出: 2,说明 obj2 中的嵌套对象也被修改了

// 解释说明:
// 1. Object.assign() 是浅拷贝,只会拷贝对象的第一层属性,对于嵌套对象不会递归拷贝。
// 2. 如果需要深拷贝,可以考虑使用其他方法,如 JSON.parse(JSON.stringify()) 或第三方库(如 lodash 的 cloneDeep)。

上一篇:js 获取图片

下一篇:js 判断对象

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js 数组复制

js 复制数组

js 数组拷贝

js 对象转数组

js 深拷贝数组

js 获取今天年月日

js jsonp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站