如何为数组中的数值添加引号?现有代码仅返回单个元素求助
解决数组元素转为带引号字符串数组的问题
你的代码出错的核心原因是:执行ages.toString()后得到的是完整字符串"1,2,3,4,5",但你错误地用ages[0]只取了第一个字符"1",所以split后只能得到["1"]。
下面是几种正确的实现方式:
- 方式一:生成数组时直接转为字符串
var ages = Array.from({ length: 5 }, (_x, i) => String(i + 1)); console.log(ages); // ["1","2","3","4","5"]
- 方式二:对已有数字数组直接转换
如果已经有现成的数字数组,直接用map方法把每个元素转为字符串即可:
var ages = Array.from({ length: 5 }, (_x, i) => i + 1); const newArr = ages.map(item => String(item)); console.log(newArr); // ["1","2","3","4","5"]
- 方式三:修正你原有的代码逻辑
如果一定要保留toString的步骤,只需去掉错误的ages[0],直接对完整字符串split:
var ages = Array.from({ length: 5 }, (_x, i) => i + 1); ages = ages.toString(); const newArr = ages.split(",").map(x => x.trim()); console.log(newArr); // ["1","2","3","4","5"]
内容的提问来源于stack exchange,提问作者MBSteve
相关产品推荐
相关产品推荐

