You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何重置动态键对象中嵌套对象的email字段?

解决动态键对象的email重置问题

针对你需要重置动态键对象中所有嵌套对象email属性的需求,这里有两种实用的实现方式:

方式一:直接修改原对象

如果不需要保留原数据,可以直接遍历对象的所有键,逐个重置email属性:

const obj = {16: {email: 'tom@tom.tom', name: 'Tom', seq: 16}, 50: {email: 'boy@boy.boy', name: 'Boy', seq: 50}};

// 遍历对象的所有键,重置每个嵌套对象的email
Object.keys(obj).forEach(key => {
  obj[key].email = '';
});

console.log(obj);
// 输出结果:{16: {email: '', name: 'Tom', seq: 16}, 50: {email: '', name: 'Boy', seq: 50}}

方式二:生成新对象(保留原数据)

如果需要保留原对象不变,可以通过复制生成新对象:

const obj = {16: {email: 'tom@tom.tom', name: 'Tom', seq: 16}, 50: {email: 'boy@boy.boy', name: 'Boy', seq: 50}};

// 基于原对象生成新对象,重置email属性
const newObj = Object.fromEntries(
  Object.entries(obj).map(([key, nestedObj]) => {
    // 复制嵌套对象并修改email,不影响原数据
    return [key, {...nestedObj, email: ''}];
  })
);

console.log(newObj);
// 输出结果:{16: {email: '', name: 'Tom', seq: 16}, 50: {email: '', name: 'Boy', seq: 50}}
console.log(obj); // 原对象保持不变

这两种方法都不需要硬编码对象的键,不管对象里有多少个嵌套对象,都能自动处理。

内容的提问来源于stack exchange,提问作者Lee SeongBae

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 14:23:12