繁体   English   中英

数组拆分中的未定义属性

[英]Undefined properties in array split

所以,我这里有这个 function 旨在拆分数组元素并将它们返回到两个单独的 arrays。 问题是,当我尝试运行它时,它返回“Challenges.js:32 Uncaught TypeError: Cannot read properties of undefined (reading 'split')”我真的不明白,我在这里错过了什么? 抱歉这个菜鸟问题,学习不到两周:D

const array0 = [
    "3:1",
    ...
    "4:0",
  ];
let array1 = [];
let array2 = [];

for (let i = 0; i <= array0.length; i++) {
    array1.push(array0[i].split(":")[0]);
    array2.push(array0[i].split(":")[1]);
  }
  
  console.log(array1, array2);

for 循环的条件应该是i < array0.length而不是i <= array0.length

你的 for 循环是错误的,应该是

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

}

并不是

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

}

您需要将<=更改为<或在array0.length之后添加-1

for (let i = 0; i < array0.length; i++) {
    array1.push(array0[i].split(":")[0]);
    array2.push(array0[i].split(":")[1]);
  }

都可以

for (let i = 0; i < array0.length -1; i++) {
    array1.push(array0[i].split(":")[0]);
    array2.push(array0[i].split(":")[1]);
  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM