特定
options = {
underscored: true
}
products = {
foo: bar
}
Run Code Online (Sandbox Code Playgroud)
我想得到
products = {
underscored: true
foo: bar
}
Run Code Online (Sandbox Code Playgroud)
是否可以在Javascript中将对象推送到另一个对象?
Pet*_*tai 29
ES5
<script>
function mix(source, target) {
for(var key in source) {
if (source.hasOwnProperty(key)) {
target[key] = source[key];
}
}
}
mix(options, products);
</script>
Run Code Online (Sandbox Code Playgroud)
ES6 - 这会改变objectToMergeTo
const combinedObject = Object.assign(objectToMergeTo, source1, source2)
Run Code Online (Sandbox Code Playgroud)
ES7(带扩展运算符的语法美) - 但是这个版本创建了一个新实例,你不能用扩展运算符添加到一个对象中.
const combined = { ...source1, ...source2 }
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
for(var key in options) {
products[key] = options[key];
}
Run Code Online (Sandbox Code Playgroud)
这将有效地结合两个对象的变量.