我需要检查数组元素中是否有任何一个满足给定条件。但是我收到“is
未定义”的错误。
var tempfLength = tempfArray.length;
for(var i=tempfLength-2;i> -1;i--){
alert(tempfArray[i]);
if((tempfLength >length)&&(is(tempfArray[i]==parentName))){
$(this).hide('str');
}
}
答案 0 :(得分:1)
更改以下行:
if((tempfLength >length)&&(is(tempfArray[i]==parentName)))
{
}
到
if( (tempfLength >length) && (tempfArray[i] == parentName) )
{
// Do something here
}
注意:
&&
或||
==
答案 1 :(得分:0)
使用is()
函数,如:
if((tempfLength >length)&&(parentName.is(tempfArray[i])))
{
}
阅读文档:http://api.jquery.com/is/
确保parentName和tempfArray [i]都是jquery对象
答案 2 :(得分:0)
未被定义。
此错误表示功能is()
在您调用它的 全局 上下文中不可用。
我理解了这个问题,您可以使用Array.prototype.find()
:
var $this = $(this); // <----make sure to cache it as in the array this doesn't belong to
var tempfLength = tempfArray.length; //`----what you think.
for(var i=tempfLength-2;i> -1;i--){
alert(tempfArray[i]);
if((tempfLength >length)&&(tempfArray.find(function(item){item === parentName})))){
$this.hide('str');
}
}