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

JavaScript中如何遍历数组索引并按索引递增提取对应字符?

JavaScript实现按数组索引提取对应字符串指定位置字符

你需要实现的逻辑是:遍历数组时,用当前元素的数组索引i,去提取该元素(字符串)的第i个字符(字符串索引同样为i)。这里给你两种可行的实现方案:

方案一:改进for循环(适配你之前的尝试)

既然你已经在用for循环遍历数组索引,只需要在循环里同时用这个索引去访问字符串的对应位置即可:

const input = ['mango', 'banana', 'apple', 'orange', 'pineapple'];
const result = [];

for (let i = 0; i < input.length; i++) {
  // 用数组索引i,获取当前字符串的第i个字符
  // 加|| ''是为了避免字符串长度不足时返回undefined
  const char = input[i][i] || '';
  result.push(char);
}

console.log(result); // 输出: ["m", "a", "p", "n", "a"]

你也可以用字符串的charAt()方法替代索引访问,效果一致:input[i].charAt(i)。

方案二:用Array.map()简化代码

map()方法本身会在遍历数组时提供当前元素的索引,写法更简洁:

const input = ['mango', 'banana', 'apple', 'orange', 'pineapple'];
const result = input.map((str, index) => str[index] || '');

console.log(result); // 输出: ["m", "a", "p", "n", "a"]

补充说明

如果数组里存在长度小于对应索引的字符串(比如某个元素是"ab",但它在数组的索引3位置),str[index]会返回undefined,用|| ''可以把这类情况转为空字符串,你也可以根据需求改成其他默认值。

内容的提问来源于stack exchange,提问作者Yusuff Tukur Abdulkadir

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 17:42:04