如何正确处理错误情况,如何在JS中将字符串转换为int?
当参数不是一个整数时,我希望NaN返回:
答案 0 :(得分:1)
function cNum(param) {
return param === "" ? NaN : Number(param)
}
cNum(""); //returns NaN
cNum("3b"); //returns NaN
cNum("4.5"); //returns 4.5
答案 1 :(得分:0)
答案 2 :(得分:0)
function stringToInt(str) {
var num = parseInt(str);
if (num == str)
return num;
return NaN;
}
实施例
stringToInt("")
NaN
stringToInt("3")
3
stringToInt("3x")
Nan
答案 3 :(得分:0)
var intval = /^\d+$/.test( strval ) ? parseInt( strval ) : NaN;
答案 4 :(得分:0)
你不需要太多 - 如果s是一个字符串:
如果s是整数,s%1 将返回0。
如果s是非整数,
将返回非零数字和NaN,如果s根本不是数字。
function isInt(s){
return (s%1===0)? Number(s):NaN;
}
但是虽然返回的数字是一个整数,但对于javascript它仍然只是一个数字。