{}是一个不完全空的对象,因为他的原型链上还有Object呢,而null就是完全空的对象,啥也没有,原型链也没有,所以null instanceof Object === false;[]就更不用说了,它的原型链上还比{}多一个Array。
所以,纯粹意义上初始化一个空对象应该用null,{}更像是初始化对象,和new一个没有key的Obejct是一样的。

还有就是空数组转换成布尔类型返回的是true:

因为数组(不管是不是空的)属于对象类型,对象类型转为boolean类型(内部对应ToBoolean()操作)时都是true。所以判断数组一般使用的是判断数组的长度。

转载于:https://www.cnblogs.com/mmykdbc/p/9140756.html

js当中null和{}区别相关推荐

  1. js 中null,undefined区别

    首先摘自阮一峰先生的文章: 大多数计算机语言,有且仅有一个表示"无"的值,比如,C语言的NULL,Java语言的null,Python语言的None,Ruby语言的nil. 有点奇 ...

  2. js中!和!!的区别及用法

    js中!和!!的区别及用法 js中!的用法是比较灵活的,它除了做逻辑运算常常会用!做类型判断,可以用!与上对象来求得一个布尔值, 1.!可将变量转换成boolean类型,null.undefined和 ...

  3. mysql 中is not null 和 !=null的区别

    今天做定时任务,需要用到一个mysql查询 于是我就写: sqlcondition=" and fplsh!=null and iskp='2'" 却发现发挥的list为空 很是诧 ...

  4. mysql''和null,mysql中NULL和null的区别

    接触php的web开发一段时间了,在进行数据库操作的时候经常会遇到一个问题,使得同一字段在页面显示时有3种类型NULL,null以及数字,当时的解决办法是将这一字段定义为varchar类型,在插入数据 ...

  5. JS-undefined与null的区别

    JS-undefined与null的区别 var array = new Array(); array[0] = 1; array[1] = 2; array[10] =10; array[2]到ar ...

  6. 关于mysql设置varchar 字段的默认值''和null的区别,以及varchar和char的区别

    一.背景 根据业务需求,发现以前的同事在设计表的时候,很多字段都没有设置默认值.在mysql5.7版本之后,没有设定默认值的字段,在严格模式下是很容易报错的,所以我这边需要先给每个字段加上一个默认值. ...

  7. mysql char null_关于mysql设置varchar 字段的默认值''和null的区别,以及varchar和char的区别...

    一.背景 根据业务需求,发现以前的同事在设计表的时候,很多字段都没有设置默认值.在mysql5.7版本之后,没有设定默认值的字段,在严格模式下是很容易报错的,所以我这边需要先给每个字段加上一个默认值. ...

  8. JS和JQUERY的区别

    JS和JQUERY的区别 ①.根据ID取元素 { JS:取到的是一个DOM对象. 例:var div = document.getElementByID("one"); JQUER ...

  9. python 空值_数据库中的空值与NULL的区别以及python中的NaN和None

    展开全部 数据库里面的"32313133353236313431303231363533e59b9ee7ad9431333363393632空值"有两种:空字符("&qu ...

最新文章

  1. 计算机计算能力,计算机/电脑为什么拥有计算能力
  2. springboot之简洁集成mybatis
  3. mybatis转义反斜杠_mybatis like 的坑
  4. Android开发--Matrix(二)--实现图片的旋转
  5. Android学习笔记进阶十三获得本地全部照片
  6. oracle 产看执行计划_ODBA 技能SPM计划
  7. (43) 讨论和通知
  8. Mac安装telnet
  9. HTTP Status 404 - There is no Action mapped for...
  10. 7-5 服务器统一出错处理2
  11. githubRank: Github 项目和用户排行榜
  12. 目前使用的python版本_Python版本到底有多少种?
  13. 世界各国各行业投入产出表(2000-2014年)
  14. Oracle SQL性能优化 SQL优化
  15. axios 登录后设置header,vue+axios 全局添加请求头和参数操作
  16. ins是什么与Instagram有什么区别
  17. c#.net command 命令详细分析
  18. 配置console口认证(华为/思科)
  19. 图片无限放大,不模糊,图片移动,仿微信图片放大
  20. js实现点击复制链接功能

热门文章

  1. lintcode-87-删除二叉查找树的节点
  2. JAVA基础知识(13)-----Lock接口
  3. 卷积神经网络在tenserflow的实现
  4. (转,记录用)jQuery页面加载初始化的3种方法
  5. 数据库左连接查询时候的技巧.
  6. 第十节 4基于ashx方式的ASP.Net开发
  7. 多个ORACLE HOME时的程序连接
  8. 优秀的人都有一个共同点
  9. 曾经很火的迅雷,为什么现在不怎么火了?
  10. It is worth noting that among the four