函数四种调用模式以及其中的this指向
2019/6/27 21:28:44
本文主要是介绍函数四种调用模式以及其中的this指向,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第一种:函数直接执行模式
function add(a,b){ console.log(this); return a+b; } add(10,20)//this===window
第二种:对象方法的调用模式
var obj={ name:'aaa', age:20, said:function(){ console.log(this); } } obj.said();//this===obj,此处this指代被调用者
第三种:构造器的调用模式
function School(){ this.said=function(){ console.log(this); } } var nanj=new School(); nanj.said();//对象调用自己的方法,this===nanj,类似上面
第四种:call和apply调用模式
function change(a,b){ this.detial=a*b; console.log(this); } var p={}; change.call(p,4,5);//此处的this===p console.log(p.detial); var q=[]; change.call(q,5,10)//this===q console.log(q.detial); //apply和call一样的用法,只不过apply第二个参数用数组进行传递 var arr=[]; change.apply(arr,[10,10]);//this===arr console.log(arr.detial); var str={}; change.apply(str,[20,20]);//this===str console.log(str.detial);
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持找一找教程网!
这篇关于函数四种调用模式以及其中的this指向的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-30React Native常用组件-点击组件
- 2024-05-30uniapp+vue3+uv-ui手机端后台OA管理模板
- 2024-05-29Python网络爬虫的时候json=就是让你少写个json.dumps()
- 2024-05-27React Native常用组件-展示组件
- 2024-05-27React Native常用组件-列表组件
- 2024-05-09vue3开发前端表单缓存自定义指令,移动端h5必备插件
- 2024-05-09React Hooks在class组件中的使用方式
- 2024-03-30[OIDC in Action] 2. 基于OIDC(OpenID Connect)的SSO(纯JS客户端)
- 2024-03-29terraform jsonencode
- 2024-03-13vuex-persist