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

JavaScript中如何拼接对象数组属性生成指定格式的新数组

不需要将对象中的:转换为,。
你之前的方案失效的核心原因是:join()是数组专属的实例方法,只能作用于数组类型的数据。你现在处理的是对象数组,遍历的每一项都是普通Object类型,本身没有join方法,和对象语法里的冒号没有任何关系。

你可以直接取每个对象的firstname和surname属性拼接,就能得到目标结果,以下是两种实现方案:

方案1:使用数组map方法(代码更简洁)

var Ids = [
  {
    "firstname": "name_1",
    "surname": "surname_1"
  },
  {
    "firstname": "name_2",
    "surname": "surname_2"
  },
  {
    "firstname": "name_3",
    "surname": "surname_3"
  }
]
const newId = Ids.map(item => item.firstname + item.surname)
console.log(newId) 
// 输出:["name_1surname_1", "name_2surname_2", "name_3surname_3"]

方案2:使用你熟悉的for循环实现

var Ids = [
  {
    "firstname": "name_1",
    "surname": "surname_1"
  },
  {
    "firstname": "name_2",
    "surname": "surname_2"
  },
  {
    "firstname": "name_3",
    "surname": "surname_3"
  }
]
var newId = [];
for(var i=0; i < Ids.length; i++){
  var fullName = Ids[i].firstname + Ids[i].surname
  newId.push(fullName)
}
console.log(newId)
// 输出:["name_1surname_1", "name_2surname_2", "name_3surname_3"]

注:你给出的预期输出中第三个值为name_1surname_2属于笔误,上述代码输出结果和原数组的属性值完全对应。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 20:42:00