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

如何在循环中将计数器变量i嵌入对象属性名(如testData_i_name)

解决方案:用方括号表示法动态访问对象属性

当然可以实现!在JavaScript里,访问对象属性有两种方式:点表示法(比如obj.prop)和方括号表示法(比如obj['prop'])。后者刚好支持动态拼接属性名,完全符合你的需求,而且不需要用到全局作用域或者window对象。

修改后的代码应该是这样的:

for(var i = 0; i < record.length; i++) {
  // 动态拼接属性名,用方括号访问
  var targetData = record[i][`testData_${i}_name`];
  // 这里可以继续处理获取到的 targetData
  console.log(targetData);
}

关键说明:

  • 我们用模板字符串(反引号包裹,${i}插入变量)来动态生成属性名字符串,比如当i=0时,生成的就是"testData_0_name",i=1时就是"testData_1_name"。
  • 然后通过record[i][属性名字符串]的方式,就可以精准访问到对应的属性了,和点表示法的效果完全一致,但灵活性更高。

如果你的运行环境不支持ES6模板字符串(比如一些老旧浏览器),也可以用传统的字符串拼接方式替代:

for(var i = 0; i < record.length; i++) {
  var propName = "testData_" + i + "_name";
  var targetData = record[i][propName];
  // 后续处理逻辑
}

这样就完美解决了你的需求,既不需要依赖全局变量,也完全满足循环中动态切换属性的要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:40:06