Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么isNaN(';';)或isNaN(";)为假(一个引号或双引号被视为有效数字)?_Javascript_String - Fatal编程技术网

Javascript 为什么isNaN(';';)或isNaN(";)为假(一个引号或双引号被视为有效数字)?

Javascript 为什么isNaN(';';)或isNaN(";)为假(一个引号或双引号被视为有效数字)?,javascript,string,Javascript,String,我需要一个内置函数来检查变量是否包含Javascript中的有效数字,我尝试使用的是isisNaN,但是当我使用一个引号(“”)或两个引号(“”)时,结果总是false 为什么单引号或双引号被视为有效数字 空字符串被转换为0,该值不是NaN 空字符串被转换为0,该值不是NaN 任何不能转换为数字的东西都应该返回true,但是“字符串可以解析为number,所以它返回false console.log(+“”) console.log(编号(“”) console.log(isNaN(“”)

我需要一个内置函数来检查变量是否包含Javascript中的有效数字,我尝试使用的是is
isNaN
,但是当我使用一个引号(“”)或两个引号(“”)时,结果总是
false

为什么单引号或双引号被视为有效数字

空字符串被转换为0,该值不是NaN

空字符串被转换为0,该值不是NaN


任何不能转换为数字的东西都应该返回true,但是
字符串可以解析为number,所以它返回false

console.log(+“”)
console.log(编号(“”)

console.log(isNaN(“”)
任何不能转换为数字的东西都应该返回true,但是
“”
字符串可以解析为数字,所以它返回false

console.log(+“”)
console.log(编号(“”)

console.log(isNaN(“”)
将空字符串转换为
数字将计算为0。布尔值(
+false
=0、
+true
=1)和
null
也是如此。如果这是不需要的,您可以创建自己的函数来确定某些(字符串)值是否可以转换为
Number
。另见(示例@)

const canConvert2Number=value=>
!价值观||
值===false||
值===true||
值===null | |
字符串(值).trim().长度<1
? 假的
: !isNaN(+数值);
console.log(canConvert2Number(null))//假的
console.log(canConvert2Number(“”)//假的
log(canConvert2Number())//假的
console.log(canConvert2Number(false))//假的
console.log(canConvert2Number(true))//假的
console.log(canConvert2Number(“[]”)//假的
log(canConvert2Number(“{}”)//假的
console.log(canConvert2Number(“20.4”)//真的
console.log(canConvert2Number(“10E4”)//正确

.as控制台包装{top:0;最大高度:100%!important;}
将空字符串转换为
Number
将计算为0。布尔值(
+false
=0、
+true
=1)和
null
也是如此。如果这是不需要的,您可以创建自己的函数来确定某些(字符串)值是否可以转换为
Number
。另见(示例@)

const canConvert2Number=value=>
!价值观||
值===false||
值===true||
值===null | |
字符串(值).trim().长度<1
? 假的
: !isNaN(+数值);
console.log(canConvert2Number(null))//假的
console.log(canConvert2Number(“”)//假的
log(canConvert2Number())//假的
console.log(canConvert2Number(false))//假的
console.log(canConvert2Number(true))//假的
console.log(canConvert2Number(“[]”)//假的
log(canConvert2Number(“{}”)//假的
console.log(canConvert2Number(“20.4”)//真的
console.log(canConvert2Number(“10E4”)//正确

.as控制台包装{top:0;最大高度:100%!important;}
使用isNan不足以验证数字。使用isNan不足以验证数字。