Javascript 在没有包装器的情况下向另一个对象添加新对象
我正在使用es6从另一个文件导入一些json,但当我尝试在另一个json对象中收集它们时,它们添加了变量名作为数组名 element1.jsJavascript 在没有包装器的情况下向另一个对象添加新对象,javascript,ecmascript-6,Javascript,Ecmascript 6,我正在使用es6从另一个文件导入一些json,但当我尝试在另一个json对象中收集它们时,它们添加了变量名作为数组名 element1.js module.exports = { 'element1': { foo: 'bar' } } element2.js module.exports = { 'element2': { foo: 'bar' } } 当我运行下面的代码时 import elementVar1 from './element1.js' import eleme
module.exports = {
'element1': { foo: 'bar' }
}
element2.js
module.exports = {
'element2': { foo: 'bar' }
}
当我运行下面的代码时
import elementVar1 from './element1.js'
import elementVar2 from './element2.js'
const list = { elementVar1, elementVar2 }
按如下所示列出退货
{
elementVar1: {
element1: {
foo: 'bar'
}
},
elementVar2: {
element2: {
foo: 'bar'
}
}
}
我的目标是在没有任何包装的情况下处理这些元素
{
element1: {
foo: 'bar'
},
element2: {
foo: 'bar'
}
}
基本上,我想告诉他们这应该可以
import elementVar from './element.js'
const list = elementVar;
编辑
基于已更改的问题。。。解决办法如下:
import elementVar1 from './element1.js'
import elementVar2 from './element2.js'
const list = Object.assign({}, elementVar1, elementVar2);
无需将其包装在
{}
中,只需使用const list=elementVar
,或者为什么不直接从“/element.js”导入列表呢?在您的示例中没有JSON,只有JavaScript对象。您应该添加这将复制引用const list=Object.assign({},elementVar)代码>要创建浅克隆,因为我不想只对一个元素执行此过程。我要对多个元素进行分析。我编辑了这个问题。@BarışTuna请看我编辑的回答。非常感谢@SantanuBiswas这是我想做的