无法读取未定义的属性"toString" - Javascript



我正在尝试获取一个数字数组,将它们转换为字符串(然后转换为单个字符串(,这样我就可以轻松地在一个键中存储多个值:value db(5个2位数->一个10位数(。我有一个5个数字的数组,里面有一个for循环的函数,我想看看array[I],取出数字,然后将其转换为字符串。

var index1 = [0, 4, 6, 2, 11]
// merge indexes into one number - to be stored in db - take apart when called
function storeVal() {
let valueArray = []
for(i = 0; i <= index1.length; i++) {
let num = index1[i].toString()
if  (num.length < 2) {
let newString = '0' + num
valueArray.push(newString)
} else {
valueArray.push(num)
}
}
return valueArray
}
console.log(storeVal())

这个代码给了我一个错误";无法读取属性";toString"未定义";。当我更改index1[I]行时,它不会抛出错误,但不允许我使用正确的值。

我认为问题是您正在运行循环,直到它小于或等于数组index1的大小。

要解决此问题,您可以更改for循环的部分

for(i = 0; i <= index1.length; i++) {

for(i = 0; i < index1.length; i++) {

最新更新