如何使用for...in循环打印数组的字符串元素?现有代码仅输出索引
正确遍历数组并输出元素的解决方案
你用for...in遍历数组时,x拿到的是数组的索引字符串(比如"0"、"1"),而不是数组元素本身——这就是代码只输出索引的原因。for...in设计用于遍历对象的可枚举属性,并不适合遍历数组。
以下是几种可行的解决方案:
方案1:使用for...of遍历(推荐)
for...of是ES6专门用于遍历可迭代对象(包括数组)的语法,能直接获取元素值:
let arr = ['Apple', 'Banana', 'Watermelon'] for (let x of arr) { console.log(x); }
输出结果:
Apple Banana Watermelon
方案2:使用数组的forEach方法
forEach是数组内置的迭代方法,会自动遍历每个元素并执行回调:
let arr = ['Apple', 'Banana', 'Watermelon'] arr.forEach(item => { console.log(item); })
方案3:传统for循环(灵活控制遍历范围)
如果需要自定义遍历的起始、结束位置,传统for循环更合适:
let arr = ['Apple', 'Banana', 'Watermelon'] for (let i = 0; i < arr.length; i++) { console.log(arr[i]); }
内容的提问来源于stack exchange,提问作者Darshan Chauhan
相关产品推荐
相关产品推荐

