__proto__
属模拟实现 new 运算符性并指向构造函数的原型对象@code
instanceof
运算符用于检测构造函数的 prototype
属性是否出现在某个实例对象的原型链上
@code
Object.create()
方法创建一个新对象,使用现有的对象来提供新创建的对象的 __proto__
@code
call()
方法使用一个指定的 this
值和单独给出的一个或多个参数来调用一个函数
@tab es6
@tab es6
apply()
方法调用一个具有给定 this
值的函数,以及以一个数组(或类数组对象)的形式提供的参数
@tab es5
bind()
方法创建一个新的函数,在 bind()
被调用时,这个新函数的 this
被指定为 bind()
的第一个参数,而其余参数将作为新函数的参数供调用时使用。
@tab es5
作用: 一个函数在一段时间内多次触发都只执行最后一次 原理: 利用定时器,在函数第一次执行时设定一个定时器,再次调用时如果已经设定过定时器就清空之前的定时器并设定一个新的定时器,当定时器结束后执行传入的回调函数 应用: 搜索输入框获取用户输入的联想结果
@code
作用: 函数节流指指的是在一段时间内只允许函数执行一次 (例如 3
秒执行一次那么在函数第一次调用后的 3
秒内后面的函数调用将被忽略) 原理: 利用时间戳来判断,记录上次执行的时间戳,在每次触发事件时判断当前时间是否大于上次执行的时间 + 设置的间隔 ,如果是则执行回调并更新上次执行的时间戳 应用: 降低 scroll resize
事件的触发频率
@code