数据的赋值
对象赋值
用 Object.assgin() 实现浅拷贝
代码举例:
const obj1 = { name: 'qianguyihao', age: 28, desc: 'hello world', }; const obj2 = { name: '许嵩', sex: '男', }; // 【关键代码】浅拷贝:把 obj1 赋值给 obj2。这行代码的返回值也是 obj2 Object.assign(obj2, obj1); console.log(JSON.stringify(obj2));
打印结果:
{ "name":"qianguyihao", "sex":"男", "age":28, "desc":"hello world" }
注意,上面这行代码在实际开发中,会经常遇到,一定要掌握。它的作用是:将 obj1 的值追加到 obj2 中。如果两个对象里的属性名相同,则 obj2 中的值会被 obj1 中的值覆盖。
数组赋值
扩展运算符
arr2 = arr1;
上方代码中,其实是让 arr2 指向 arr1 的地址。也就是说,二者指向的是同一个内存地址。
如果不想让 arr1 和 arr2 指向同一个内存地址,我们可以借助扩展运算符来做:
let arr2 = [...arr1]; //arr2 会开辟新的内存地址
参考链接:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现