JavaScript中如何合并两个对象生成指定嵌套结构的新对象
JavaScript 对象定向合并实现方案
你需要的是将第一个对象作为第二个对象的category属性值进行合并,有两种常用的实现方式:
1. 对象展开运算符(ES6+ 推荐)
这是最简洁的写法,会生成全新的合并对象,不会修改原有两个对象:
// 定义源对象 const categoryInfo = { category: 'product 1', sub_category: 'sub product 1', }; const productInfo = { nama: "nama product1", jenis: "jenis1" }; // 合并操作 const mergedResult = { ...productInfo, category: categoryInfo };
2. Object.assign 方法(兼容更低版本ES环境)
如果需要兼容不支持展开运算符的旧环境,可以用Object.assign实现:
const mergedResult = Object.assign({}, productInfo, { category: categoryInfo });
说明
- 两种写法最终得到的
mergedResult就是你需要的目标结构 - 如果
productInfo中本身已经存在category属性,后面新增的category配置会覆盖原有值 - 两种方法都是生成新对象,不会修改
categoryInfo和productInfo的原有内容
内容的提问来源于stack exchange,提问作者creator life
相关产品推荐
相关产品推荐

