我怎样才能得到下面的数组中的数字
问题描述:
我想从这个数组中获得只有数字的警报,但不能!在此先感谢我怎样才能得到下面的数组中的数字
var clenk = [0, null, 42, undefined, "", true, false, NaN, "", "foo bar"];
var filteredArr = clenk.filter(function(val) {
return !(val === isNaN);
});
alert(filteredArr);
答
您可以尝试
var clenk = [0, null, 42, undefined, "", true, false, NaN, "", "foo bar"];
var filteredArr = clenk.filter(function(val) {
return !isNaN(parseFloat(val));
});
alert(filteredArr);
答
使用typeof
运营商检测val
类型。
var clenk = [0, null, 42, undefined, "", true, false, NaN, "", "foo bar"];
var filteredArr = clenk.filter(function(val) {
return (typeof val === "number" && !isNaN(val));
});
alert(filteredArr);
+0
欢呼,作品一种享受。只是想知道为什么我需要“号码”在那里? – user2678132
+0
,因为isNaN将变量转换为数字,然后检查它是否为NaN.so'isNaN('32');'将返回false您传递的字符串不是数字 –
辉煌。欢呼声 – user2678132