我正在尝试检查数组中是否存在用户代码。但是即使代码存在于数组中,jQuery 代码也会返回 false。
function isValidCode(code){
var arr = [1, 2, 3];
//return ($.inArray(code, arr) > -1);
return ($.inArray(code, arr) !== -1);
}
function LuckWinner(key){
if(isValidCode(key)){
console.log(key+ ": is in array");
} else {
console.log(key+" is NOT in array");
}
}
您的代码似乎按预期工作。
请注意,$.inArray()
将执行类型比较;我希望你传递一个字符串。如果要测试字符串键,则isValidCode
函数将返回 false,因为数组仅包含整数值。您可以使用 parseInt
将代码强制转换为整数以避免此问题:
function isValidCode(code){
var arr = [1, 2, 3];
return ($.inArray( parseInt( code, 10 ), arr ) !== -1);
}