js中undefined,null,NaN的区别
类型分析:
js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,object为引用类型。
var a1;
var a2 = true;
var a3 = 1;
var a4 = "Hello";
var a5 = new Object();
var a6 = null;
var a7 = NaN;
var a8 = undefined;
document.write("<br />");
document.write(typeof(a1)); //显示"undefined"
document.write("<br />");
document.write(typeof(a2)); //显示"boolean"
document.write("<br />");
document.write(typeof(a3)); //显示"number"
document.write("<br />");
document.write(typeof(a4)); //显示"string"
document.write("<br />");
document.write(typeof(a5)); //显示"object"
document.write("<br />");
document.write(typeof(a6)); //显示"object"
document.write("<br />");
document.write(typeof(a7)); //显示"number"
document.write("<br />");
document.write(typeof(a8)); //显示"undefined"
document.write("<br />");
输出结果:
undefined
boolean
number
string
object
object
number
undefined
从上面的代码中可以看出未定义的值和定义未赋值的为undefined,未初始化的变量可以用typeof判断,null是一种特殊的object,NaN是一种特殊的number。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现