javascript - Object.assign {} 和 Object.Assign [] 有区别吗

标签 javascript typescript

我正在查看一位已不复存在的开发人员的一些旧代码,并注意到有时他使用

Object.assign({}, xyz) 

还有他用过的其他东西

 Object.assign([], abc);

两者有区别吗?

最佳答案

是的,有区别。一个将值分配给一个新对象,另一个将值分配给一个新数组。

查看此处的输出并与实际浏览器控制台中的输出进行比较。

var abc = {foo:"bar"};

var r1 = Object.assign({},abc);
var r2 = Object.assign([],abc);

console.log(r1);
console.log(r2);

第二个没有做的是向数组添加一个新项——它的长度仍然为 0。

关于javascript - Object.assign {} 和 Object.Assign [] 有区别吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50626618/

相关文章:

c# - 当鼠标悬停在 DIV 上时,如何使某些控件可见并与 DIV 重叠?

javascript - 我可以避免在每个 JavaScript 文件中调用 $(document).ready() 吗?

javascript - Vue.js:在 vue.config.js (vue cli 3) 中定义计算环境变量

javascript - 是否可以将变量值用作 Typescript 中的联合类型之一?

javascript - 来自 dom 的 Json 不起作用

javascript - 跟踪调用递归函数的次数

typescript - typescript 中的 'static side' 和 'instance side' 到底是什么?

javascript - 更新数组时 Redux 状态未更新

node.js - 如何使用 Cloud Functions for Firebase 获取子值的键?

node.js - 将 Node.js 项目从纯 ES6 迁移到 TypeScript