我在这里有一个方法,我在一个循环中获取数组的长度,我有点困惑,因为此错误仅在某些时候发生,而不是总是发生。有时我能够在文本框中获取过滤后的值,而有时我也无法尝试删除设置超时,但是每当遇到此错误时,它都不会显示出filteredNames。为什么会这样?
SubName(subjec: string[], compar: string[]) {
setTimeout(() => {
this.len = subjec.length;
this.len2 = compar.length;
this.filteredName = [];
for(var i = 0; i< this.len; i++) {
if(compar.indexOf(subjec[i]) === -1){
this.filteredName.push(subjec[i]);
}
}
for(var j = 0; j<this.len2; j++) {
if(subjec.indexOf(compar[j]) === -1){
this.filteredName.push(compar[j]);
}
}
console.log("Names = " + this.filteredName);
return this.filteredName;
}, 500);
}
答案 0 :(得分:2)
您可以使用三元运算符消除该错误
int