2021-01-18 - 草稿

深拷贝和浅拷贝

json.parse

会忽略 undefined;
会忽略symbol;
如果对象的属性为Function,因为JSON格式字符串不支持Function,在序列化的时候会自动删除;
诸如 Map, Set, RegExp, Date, ArrayBuffer 和其他内置类型在进行序列化时会丢失;
不支持循环引用对象的拷贝。

事件冒泡和捕获

冒泡由内向外,捕获由外到内触发
addEventListener 第三个参数为false

foreach 和map区别

同 都是用来遍历数组的
异 foreach没有返回,map返回新数组

some和every

some 有一个就为true
every 每一个都为true

暂时性死区

ES6 明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。凡是在声明之前就使用这些变量,就会报错

事件循环

  1. 执行同步任务, 异步任务推送到任务队列中
  2. 调用栈清空
  3. microtasks 队列依次进入执行栈执行,直到清空
    // ui 线程渲染
  4. macrotask取出一个宏任务并执行
  5. microtasks 队列依次进入执行栈执行,直到清空

onchange 和 oninput

 onchange event 所有主要浏览器都支持;
 onchange 属性可以使用于:<input>, <select>, 和 <textarea>。

 oninput 事件在用户输入时触发,它是在元素值发生变化时立即触发;
 该事件在 <input> 或 <textarea> 元素的值发生改变时触发。
  缺陷:从脚本中修改值不会触发事件。从浏览器下拉提示框里选取值时不会触发。IE9 以下不支持,所以IE9以下可用onpropertychange 事件代替。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容