收藏
回答

JS数组合并成对象,怎么做?

以下两个数组 a=[5,6] b=['52',‘56,57'] 合并成 {"5":["52"],"6":["56","57"]} 怎么写

回答关注问题邀请回答
收藏

2 个回答

  • 神经蛙
    神经蛙
    2023-02-25
    function mergeArrays(a, b) {
      // 使用 reduce() 方法将两个数组合并
      const merged = a.reduce((obj, key, index) => {
        // 将数字 key 作为对象属性,值为空数组
        obj[key] = [];
        // 如果 b 数组中有相应的字符串,则将其拆分为数字并添加到 key 对应的数组中
        if (b[index]) {
          obj[key] = b[index].split(',').map(Number);
        }
        return obj;
      }, {});
      return merged;
    }
    
    // 示例用法
    const a = [5, 6];
    const b = ['52', '56,57'];
    const mergedObj = mergeArrays(a, b);
    console.log(mergedObj); // 输出 {"5":["52"],"6":["56","57"]}
    


    ChatGPT 给出的方法

    2023-02-25
    有用
    回复
  • 拾忆
    拾忆
    2023-02-25
    let a=[5,6]
    let b=['52','56,57']
    let c={}
    for(let i=0; i<a.length; i++){
      c[a[i]]=b[i]
    }
    
    
    2023-02-25
    有用
    回复
登录 后发表内容