【问题标题】:Cannot Read Property "toString" of Undefined - Javascript [closed]无法读取未定义的属性“toString”-Javascript [关闭]
【发布时间】:2021-05-30 20:53:16
【问题描述】:

我正在尝试获取一个数字数组,将它们转换为字符串(然后是单个字符串),以便我可以轻松地将多个值存储在一个键中:值 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] 行时,它不会引发错误,但不允许我使用正确的值。

【问题讨论】:

标签: javascript arrays undefined tostring


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-09
    • 2020-08-01
    • 2018-02-12
    • 2022-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多