JS 高级开发中常用但较为抽象的概念
编程模式
声明式编程
只描述要实现的结果,不关心如何一步步实现。React 基于声明式编程和函数式编程
命令式编程
每行代码都读懂,然后再整合起来理解总体功能
函数式编程
防抖和节流
防抖
触发高频率事件后n秒内执行一次,如果n秒内高频事件再次触发,则重新计算时间
节流
触发高频率事件内n秒内执行一次,如果n秒内高频事件再次触发,过滤掉,因此节流会稀释执行频率
严格模式
通过在脚本头/函数头包含 "use strict"
以启用
严格模式规定不能使用未定义的变量。严格模式是对 ECMAScript5 的严格限制,以求得更高效的性能和更便捷的调试
严格模式与非严格模式区别?
严格模式不得使用 delete 删除变量名
不允许使用未来保留字 implements interface let package private protected public static 作为变量名或函数名
不允许在语句块中使用函数声明if(a<b){ function f(){} }
什么时候用严格模式?
考验代码性能及维护调试成本