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

JS克隆对象并为所有值添加前缀的实现方法

克隆对象并为所有值添加前缀的实现方法

假设有这样一个对象:

const A = { key_a1: "value_a1", key_a2: "value_a2" };

我们需要克隆它得到对象B,并且给每个值都加上prefix_前缀,最终结果如下:

const B = { key_a1: "prefix_value_a1", key_a2: "prefix_value_a2" };

已知扩展语法const B = { ...A }只能复制对象结构,没法直接修改值,这里给你几个实用的实现方式:

  • 使用Object.entries + reduce
    这种方法通过遍历键值对,逐步构建新对象:

    const A = { key_a1: "value_a1", key_a2: "value_a2" };
    const prefix = "prefix_";
    
    const B = Object.entries(A).reduce((acc, [key, value]) => {
      acc[key] = `${prefix}${value}`;
      return acc;
    }, {});
    
  • 使用Object.entries + map + Object.fromEntries
    这是更简洁的写法,先把对象转成键值对数组,处理后再转回对象:

    const A = { key_a1: "value_a1", key_a2: "value_a2" };
    const prefix = "prefix_";
    
    const B = Object.fromEntries(
      Object.entries(A).map(([key, value]) => [key, `${prefix}${value}`])
    );
    
  • 使用for...in循环遍历
    最基础的遍历方式,手动处理每个属性:

    const A = { key_a1: "value_a1", key_a2: "value_a2" };
    const prefix = "prefix_";
    const B = {};
    
    for (const key in A) {
      if (A.hasOwnProperty(key)) {
        B[key] = `${prefix}${A[key]}`;
      }
    }
    

内容的提问来源于stack exchange,提问作者Sergey Shevchenko

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 05:18:19