vue的生命周期
beforeCreate, created, beforeMount, mounted, beforeUpdate, updated, beforeDestory, destroyed
image
判断一个变量是不是数组
方法一:instanceof
image
方法二:原型prototype+toString+call
Object.prototype.toString.call(variable).indexOf('Array') !== -1;
方法三:原型prototype+isPrototypeOf()
Array.prototype.isPrototypeOf(variable)
方法四:构造函数 constructor
variable.constructor.toString().indexOf("Array") !== -1
image
image
方法五:数组方法 isArray()
Array.isArray(variable);
JS的事件流
dom事件流:
1. 事件捕获阶段
2. 处于目标阶段
3. 事件冒泡阶段
- 事件冒泡:事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传递到较为不具体的节点。
- 事件捕获:事件捕获的思想时不太具体的节点应该更早接收到事件,而最具体的节点应该最后接收到事件。事件捕获的意义在于在在事件到达预定目标之前捕获它。
- 事件处理程序:addEventListener() 和 removeEventListener()。所有 DOM 节点中都包含这两个方法,并且它们都接受 3 个参数:要处理的事件名、作为事件处理程序的函数和一个布尔值。最后这个布尔值参数如果是 true,表示在捕获阶段调用事件处理程序;如果是 false,表示在冒泡阶段调用事件处理程序。