JavaScript如何访问父对象内的子对象并新增键值对
嵌套对象属性新增操作方法
你只需要先将目标对象赋值给一个变量,再通过链式访问拿到子对象,直接为其赋值新的键值对即可,以下是完整操作示例:
1. 定义外层对象
首先把你给出的结构赋值给变量,方便后续操作:
const orderObj = { "orderNo": "12345678", "Date": "29/07/2021", "trackingno": "TN0039291", "custid": "2345", "customer": { "custid": "2345" } }
2. 访问子对象并新增属性
有两种常用的访问写法,效果完全一致:
点运算符写法(最常用)
直接通过.链式访问嵌套层级,赋值新属性即可:
// 为customer对象新增姓名、手机号属性 orderObj.customer.custName = "张三"; orderObj.customer.phone = "13800138000";
方括号写法
适合属性名是动态变量、或者包含特殊字符的场景:
const newProp = "address"; // 为customer对象新增地址属性 orderObj["customer"][newProp] = "广东省深圳市南山区XX园区";
3. 结果验证
打印customer对象即可看到新增的属性:
console.log(orderObj.customer); /* 输出结果: { custid: "2345", custName: "张三", phone: "13800138000", address: "广东省深圳市南山区XX园区" } */
注意事项
如果不确定外层对象是否存在customer属性,可使用可选链语法避免报错:
// 若customer不存在,不会抛出异常,代码会静默跳过赋值操作 orderObj.customer?.age = 28;
内容的提问来源于stack exchange,提问作者javascriptbeginner
相关产品推荐
相关产品推荐

