我正在编写一些 JavaScript 并且我有一个表,我需要在其中测试数据库键(数字)或默认值(“NO MATCH”)的字段。我正在尝试使用 jQuery 函数“isNumeric”
代码是:
var id = $('#myDataTable input:checked').map(function(){
return $(this).closest('tr').find('td:eq(3)').text();
}).get();
console.log(" ID "+id);
console.log(" ID2 "+$.isNumeric(id));
在我的控制台中,我看到:
ID 1
ID2 false
为什么这不是真的?
最佳答案
.get()
返回非数字数组 ["1"]
。
当您将它记录到控制台时,您看不到它,因为您将它与一个字符串连接起来,而 ["1"].toString()
是 "1"
。
相反,在调试时最好避免将变量强制转换为其他类型。 console.log("ID", id)
会更好。
要获取字符串而不是数组,您可以使用 .get(0)
或 [0]
。
但是,如果您只对第一个字符串感兴趣,则使用 map
没有意义:
var id = $('#myDataTable input:checked').eq(0)
.closest('tr').find('td').eq(3)
.text();
关于javascript - 为什么 $.isnumeric 是假的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30549408/