03_JS函数的this指向

发布时间:2022-06-24 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了03_JS函数的this指向脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

this通常都是在函数中使用

1.函数在调用时,JavaScript会默认给this绑定一个值;2.this的绑定和定义的位置(编写的位置)没有关系;3.this的绑定和调用方式以及调用的位置有关系;4.this是在运行时被绑定的;

this绑定规则

绑定一:默认绑定;

  独立函数调用。可以理解成函数没有被绑定到某个对象上进行调用;

  

03_JS函数的this指向

绑定二:隐式绑定;

  通过某个对象进行调用的。

  

03_JS函数的this指向

绑定三:显示绑定;

  call apply   第一个参数是相同的,会将this绑定到这个传入的对象上,后面的参数,apply为数组,call为参数列表。

  

03_JS函数的this指向

   bind 显示的绑定到一个对象上

  

03_JS函数的this指向

绑定四:new绑定;

  1.创建一个全新的对象;  2.这个新对象会被执行prototype连接;  3.这个新对象会绑定到函数调用的this上(this的绑定在这个步骤完成);  4.如果函数没有返回其他对象,表达式会返回这个新对象;

  

03_JS函数的this指向

规则优先级

  1.默认规则的优先级最低  2.显示绑定优先级高于隐式绑定  3.new绑定优先级高于隐式绑定  4.new绑定优先级高于bind    new绑定和call、apply是不允许同时使用的,所以不存在谁的优先级更高    new绑定可以和bind一起使用,new绑定优先级更高

this规则之外   忽略显示绑定   |  间接函数引用

    

03_JS函数的this指向

03_JS函数的this指向

 this规则之外 – ES6箭头函数 

  箭头函数并不绑定this对象,那么this引用就会从上层作用于中找到对应的this

面试题

03_JS函数的this指向

03_JS函数的this指向

 

03_JS函数的this指向

 

03_JS函数的this指向

 

脚本宝典总结

以上是脚本宝典为你收集整理的03_JS函数的this指向全部内容,希望文章能够帮你解决03_JS函数的this指向所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: