有人可以解释一下为什么此代码中的 if 条件
不起作用吗?
var zaposleni=[];
for(i=1;i<brOpcija;i++){
zaposleni.push(myOpts[i].value);
}
var zaposleniRestoran=[];
for(i=1;i<brOpcija;i++){
if(zaposleni[i].split(' ').slice(2).join(' ') == vrednostSelekta()){
zaposleniRestoran.push(zaposleni[i].split(' ').slice(0,2));
}
}
在这里,我有数组zaposleni
,我在其中推送一些值,数组看起来像[“name”“surname”“restaurantName”]
,然后我是检查 restaurantName == vrednostSelekta()
是否(其中 vrednostSelekta()
是 javascript 中某个函数的返回值),但我总是收到此错误:
Uncaught TypeError: Cannot read property 'split' of undefined
at HTMLSelectElement.<anonymous> (zaposleni.js:51)
at HTMLSelectElement.handle (jquery.min.js:55)
at HTMLSelectElement.o (jquery.min.js:49)
但是当我删除这个 if,然后在调试器中输入它时,我没有收到错误并且它在那里工作..提前感谢!
最佳答案
看起来“zaposleni”数组为空或者其中只有一个元素。您的 for 循环从“i=1”开始。
关于javascript - 拆分在 javascript 中不起作用,未捕获类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42182546/