>typeof(null)
<"object"

对null执行typeof预算,结果返回字符串'object',也就是说,可以将null认为是一个特殊的对象值,含义是“非对象“。

例如:用typeof obj ===‘object’判断obj是否是一个object

写法一:

var obj = {
name: 'Mocen'
} function output(obj) {
if (typeof obj === 'object') {
console.log(obj.name);
} else {
console.log('obj is not a object');
}
}
output(obj);

写法二:

var obj = {
name: 'xiaoming'
}
function output(obj) {
if (!obj && typeof obj === 'object') {
console.log(obj.name);
} else {
console.log('obj is not a object');
}
}
output(obj);

后者更为严谨

typeof在检测到null时也会显示为object,但在javascript中null并非对象,因此需要增加一个检测null的模块:
if (typeof obj === 'object' && obj !== null) ;

作者:默成S
链接:https://www.jianshu.com/p/a69b3bc9bdc2
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

最新文章

  1. 内网渗透-代理(reGeorg)
  2. Could not create the view: An unexpected exception was thrown 【转】
  3. POJ3252——Round Number(组合数学)
  4. CentOS安装卸载memcache及JAVA示例
  5. 作业.把c语言输出的基础差不多都概括了!
  6. 【safari挖的那些坑】iOS safari 浏览器 时间乱码(ios时间显示NaN) 问题解决
  7. 运行mvc报“无法确定存储版本;需要有效的存储连接或版本提示”
  8. NG2入门 - 架构
  9. BZOJ 1228: [SDOI2009]E&D(SG定理)
  10. 【转】WEB网站常见受攻击方式及解决办法
  11. Linux安装git和maven的详细过程
  12. 双向链表设计与API实现
  13. Ocelot简易教程(一)之Ocelot是什么
  14. 英语口语练习系列-C29-鸟类-辨别身份-断弦的琴
  15. k8s 官方 配置文件使用教程
  16. springboot中Properties注解的实现
  17. web自动化测试(java)---测试过程中遇到的错误合集
  18. 自动生成getter setter
  19. 最新以及历史各版本 .NET Framework 的下载
  20. 带你看懂大数据采集引擎之Flume&amp;采集目录中的日志

热门文章

  1. 禁止layer.msg()回调函数时抖动
  2. PTA(Basic Level)1031.查验身份证
  3. 【转贴】Linux查看物理CPU个数、核数、逻辑CPU个数
  4. 创建B树,动态添加节点,并使用三种遍历算法对树进行遍历
  5. python调用jenkinsapi
  6. 缓存---LRU算法实现
  7. Linux FTP的安装与权限配置
  8. 推荐JavaScript动态效果库
  9. 在docker容器中为elasticsearch配置跨域访问
  10. Java动态加载类