我在一个数组中有一个或多个项目,对于这个例子,假设它们是[65, 66, 67]
怎么能(如果它甚至可能)只做一个if条件检查匹配。
例如:
var keyArray = [65, 66, 67]; if(e.keyCode == any item in keyArray){ //Then do this }
尝试制作一个jQuery插件,用户可以将多个键映射到单个操作。 例如,按a,b或c可以提示“您正在按a,b或c”;
这是我的实际示例代码不起作用:
$this.keydown(function(e){ if(e.keyCode in keySplit){ if(typeof callback == 'function'){ callback(); e.preventDefault(); } } });
jQuery中有$.inArray
方法。
描述:在数组中搜索指定的值并返回其索引(如果未找到,则返回-1)。
或者在phpjs中查看in_array
javascript函数。
在现代浏览器中,您有Array.indexOf
方法。 对于旧版浏览器,创建类似的方法非常容易:
if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement) { var len = this.length; for (var i = 0; i < len; i++) { if (this[i] === searchElement) return i; } return -1; }; }
现在你有条件地定义了Array.indexOf
,因此它将在每个平台上都可用。 您的代码变为:
var keyArray = [65, 66, 67]; if ( keyArray.indexOf( e.keyCode ) > -1 ) { //Then do this }
请注意,如果要完全复制Array.indexOf
,请参阅: MDC indexOf
“in”运算符只能看到键,而不是值,而[65,66,67]的键当然是[0,1,2]。 所以你要检查使用:
var keyArray = {65:65, 66:66, 67:67}; if (e.keyCode in keyArray) { // whatever }
keyArray也可以是{65:“”,66:“”,67:“”}; 再次,这是关键值对的关键。
需要了解更多jQuery教程分享如果使用JavaScript,如何检查数组中的多个元素?,都可以关注jQuery技术分享栏目---计算机技术网(www.ctvol.com)!
以上就是jQuery教程分享如果使用JavaScript,如何检查数组中的多个元素?相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/jquerytutorial/982574.html