1. bind()函数无法改变ES6箭头函数中this的指向

 

        const a = ()=>{
            console.log(this)
        }
        a.bind(document)()

2.当使用~~按位非进行类型转化时,转换浮点数会丢失小数点后的数,当字符串大于2147483647(即2的31次方减一)时转化会出问题,所以我们尽量少用~~转化过大的字符串

       ~~'15.121'   //返回15

  ~~2147483647  //返回2147483647

  ~~2147483648  //返回-2147483648   即2的31次方

3.typeof null 等于object的原因

  在JS最初的版本中,使用的是32位系统,为了性能考虑使用低位存储了变量的类型信息,000开头代表的是对象,然而null表示为全零,所以将它错误的判断为 object

  虽然现在的内部类型判断代码已经改变了,但是对于这个 Bug 却是一直流传下来。

 

  

相关文章:

  • 2021-09-23
  • 2021-08-08
  • 2021-12-20
  • 2021-09-19
  • 2022-01-03
  • 2021-07-11
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-07-16
  • 2022-12-23
  • 2022-01-08
  • 2021-11-04
  • 2021-10-19
相关资源
相似解决方案