null 和 undefined
发布博客 2022.07.06 ·
47 阅读 · 0 点赞 · 0 评论
null
在 JavaScript 中 null 表示 "什么都没有"。
null是一个只有一个值的特殊类型。表示一个空对象引用。
可以设置为 null 来清空对象,也可以设置为 undefined 来清空对象。
undefined
在 JavaScript 中, undefined 是一个没有设置值的变量。
typeof 一个没有值的变量会返回 undefined。
何变量都可以通过设置值为 undefined 来清空。 类型为 undefined.
null 和 undefined 的值相等,但类型不等,typeof null是一个object;typeof 一个没有值的变量会返回 undefined。
事件的冒泡与捕获
addEventListener()的第三个布尔型参数便是定义冒泡与捕获,默认false为冒泡,true为捕获。
如果你将<p>元素插入到<div>元素中,用户点击<p>元素, 哪个元素的 "click" 事件先被触发呢?
在冒泡中,内部元素的事件会被触发,然后再触发外部元素,即:<p>元素的点击事件先触发,然后会触发<div>元素的点击事件。
在 捕获 中,外部元素的事件会先被触发,然后才会触发内部元素的事件,即:<div>元素的点击事件先触发 ,然后再触发<p>元素的点击事件。
捕获和冒泡
注意:onclick和attachEvent只能得到冒泡阶段;onblur,onfocus,onmouseenter,onmouseleave无冒泡阶段。
阻止冒泡
对象.stopPropagation();
对象.canceBubble=true;