老师,下面这个加上typeof返回值是string,不加typeof才是NaN
来源:3-12 JavaScript数据类型之数值转换
慕先生1376233
2020-06-09 21:02:33
<!DOCTYPE html>
<html>
<head>
<title>index </title>
</head>
<body>
<script type="text/javascript">
//声明保存用户名的变量不能以数字开头
/*var name;*/
//变量赋值
/*name="marry";*/
//声明保存年龄的变量
/*var age;
age=18;
//var age=18声明的同事赋值
//声明保存邮箱的变量
var emali="marry@sina.com.cn"; */
//一次声明多个变量
var name="marry",age=18,
emali="marry@sina.com.cn",address,astting=null;
var distance=12.67980;
var id="16";
//在控制台中打印
console.log(name);
// 检测数据类型
console.log(typeof(age));
//声明一个变量没有赋值,返回的类型就是 underfined
console.log(typeof(address));
//Number
console.log(distance)
console.log(age-3);
//NaN非数值,
console.log(typeof(age-"abc"));
//isNaN返回值boolean,true/false,
console.log(isNaN(age));
console.log(isNaN(emali));
// isNaN尝试会转数字
console.log(isNaN(id));
//转换数值
//number强制转换
id=Number(id);
console.log(typeof(id));
//字符串转不了的情况下,返回NaN
name=Number(name);
console.log(typeof(name));
//字符串不能相减,返回值NaN
var top="28px";
console.log(top-10);
</script>
</body>
</html>
1回答
好帮手慕星星
2020-06-10
同学你好,typeof检测值的类型,类型中没有NaN。而name变量值为字符串类型,即使Number()转化之后,得到的NaN也是字符串类型,可以和正常的NaN输出对比一下
所以使用typeof检测name的时候为string字符串类型。
祝学习愉快!
相似问题
回答 2
回答 1