Javascript 我想把多个值放入变量中
我想这样做Javascript 我想把多个值放入变量中,javascript,jquery,ajax,node.js,Javascript,Jquery,Ajax,Node.js,我想这样做 if ($(this).val() in (1,2,3) ) { ... } 我已经试过了,效果不错,但不是我想要的 if ($(this).val()==1 || $(this).val()==2 || $(this).val()==3 ) { ... } 使用数组并执行以下操作: 或 我注意到OP正在使用jQuery,但这应该适用于任何不使用jQuery的人 if([1,2,3].indexOf(yourValue) > -1) {
if ($(this).val() in (1,2,3) ) {
...
}
我已经试过了,效果不错,但不是我想要的
if ($(this).val()==1 || $(this).val()==2 || $(this).val()==3 ) {
...
}
使用数组并执行以下操作:
或
我注意到OP正在使用jQuery,但这应该适用于任何不使用jQuery的人
if([1,2,3].indexOf(yourValue) > -1) {
...
}
编辑,嘎,被Blazemonger打败了20秒试图综合目前分散在许多不同答案和评论中的信息。。。由于以下两个原因,您的代码无法工作:
,它检查的是键,而不是数组中的值。因此,例如,[1,2,3]
中的3将为false,因为[1,2,3]
具有键(索引)0,1,2
indexOf - returns the index of the (first) element that matches
inArray - is available if you are using jQuery
示例代码:
var v = parseInt($(this).val()); // radix 10
var r = [1,2,3]; // the values to check against
if(r.indexOf(v) > -1) { // method 1
if($.inArray(v, r)) { // method 2
您可以在局部变量中缓存$(this).val()
,那么您的条件表达式将是性能良好且可读的。
if([1,2,3].indexOf(yourValue) > -1) {
...
}
indexOf - returns the index of the (first) element that matches
inArray - is available if you are using jQuery
var v = parseInt($(this).val()); // radix 10
var r = [1,2,3]; // the values to check against
if(r.indexOf(v) > -1) { // method 1
if($.inArray(v, r)) { // method 2