Ecmascript 6 Object.assign vs lodash u.assign

Ecmascript 6 Object.assign vs lodash u.assign,ecmascript-6,lodash,Ecmascript 6,Lodash,查看文档中的 看起来这些函数的作用方式完全相同 这是正确的理解吗?还是我遗漏了什么?取决于浏览器。根据lodash文件: Made uu.assign使用内置对象.assign(如果可用) 您可以转到此处获取浏览器支持: 基本上,IE没有支持,所以在这种情况下使用lodash的代码 当然,它们的设计初衷也是一样的。我能看到的唯一区别是Object.assign将原始值转换为对象,而\uz.assign不转换(例如Object.assign(“hello”,{foo:1})),最好的方法是学习。然

查看文档中的 看起来这些函数的作用方式完全相同


这是正确的理解吗?还是我遗漏了什么?

取决于浏览器。根据lodash文件:

Made uu.assign使用内置对象.assign(如果可用)

您可以转到此处获取浏览器支持:

基本上,IE没有支持,所以在这种情况下使用lodash的代码


当然,它们的设计初衷也是一样的。我能看到的唯一区别是
Object.assign
将原始值转换为对象,而
\uz.assign
不转换(例如
Object.assign(“hello”,{foo:1})
),最好的方法是学习。然而,对于lodash来说,这有点复杂,因为它会随着版本的变化而变化,甚至会提到行为上的差异。谢谢@apsillers!这是一个很好的区别。如果你想写一个答案,我将投票支持你的回答。我想我会把这个扔进去玩玩。对不起,我应该说得更清楚些。我意识到有些浏览器还不支持Object.assign。我想知道,对于那些同时提供这两种功能的环境,两者之间有什么区别吗?lodash取决于浏览器,所以没有,在这种情况下使用本机实现啊!很抱歉我误解了你的答案。我现在明白你的意思了(lodash本身在可用时使用Object.assign,这听起来好像lodash的作者并不希望两者之间有任何区别)。非常有用。谢谢@JordanHendrix!没问题!是的,对于Object.assign,情况就是这样