Sta*_*bie -1 javascript jquery
假设我有一个a值为的变量:
1
Run Code Online (Sandbox Code Playgroud)
然后我有一个b包含值的数组:
[1, 2]
Run Code Online (Sandbox Code Playgroud)
为什么$.inArray(a, b)给我一个-1?我应该得到0,对吧?
小智 6
正是你所描述的给了我0[ 小提琴 ]:
var a = 1, b = [1, 2];
alert($.inArray(a, b)); // alerts "0"
Run Code Online (Sandbox Code Playgroud)
但是,当我这样做时,我可以复制你的结果(如IAbstractDownvoteFactory建议的那样):
var a = 1, b = ["1", "2"];
alert($.inArray(a, b)); // alerts "-1"
Run Code Online (Sandbox Code Playgroud)
var a = "1", b = [1, 2];
alert($.inArray(a, b)); // alerts "-1"
Run Code Online (Sandbox Code Playgroud)
.inArray只查找与您正在搜索的类型相同的匹配项(与之进行比较===).如果您无法使输入数据格式正确,您可以自己完成:
要转换a为数字:
a = +a; // or a = Number(a);
Run Code Online (Sandbox Code Playgroud)
要将所有元素转换b为数字:
for (var i = 0; i < b.length; i++) {
b[i] = +b[i];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1727 次 |
| 最近记录: |