无法获取作为函数参数传递的数组的长度
2018-03-21
219
我将获取一个传入函数参数的数组的长度
我有一个对象数组
groupList:group[]=[];
在
selectItem
中我调用
testExistinginArray
函数
selectItem (event) {
if(!this.toggle) {
this.groupList.push(event);
}
else{
this.ejList.push(event);
if(!this.testExistinginArray(event,this.groupList)) { //I pass groupList as parameter
this.groupList.push({code:event.codeBusinessGroup,name:event.nameBusinessGroup})
}
}
}
testExistinginArray(event,type: any[]) {
for(let i=0;i<this.type.length;i++) {
if (this.type[i].code.indexOf(event.codeBusinessGroup)===-1) {
return false
}
else{
return true
}
}
}
实际上我得到了未定义长度错误
TypeError: Cannot read property 'length' of undefined
2个回答
使用
type.length
而不是
this.type.length
。此处
type
不是函数变量,而是参数变量。因此您无法使用
this
进行读取>
Ankur
2018-03-21
您尝试从
this.type
中提取属性
length
,而不是从函数参数
type
中提取。看起来像是拼写错误
Vasyl Moskalov
2018-03-21