web前端开发Javascript基础入门--javascript中的this用法
小职 2021-08-03 来源 :CSDN「半成熟、」 阅读 626 评论 0

摘要:本文主要介绍了web前端开发Javascript基础入门--javascript中的this用法,通过具体的内容向大家展现,希望对大家前端开发Javascript的学习有所帮助。

本文主要介绍了web前端开发Javascript基础入门--javascript中的this用法,通过具体的内容向大家展现,希望对大家前端开发Javascript的学习有所帮助。

web前端开发Javascript基础入门--javascript中的this用法

this

在javascript里面,this是一个特殊的对象,它不像其他编程语言那样,是存储在实例中的值,直接指向此实例。而是作为一个单独的指针,在不同的情况之下,指向不同的位置。


1、在一般函数方法中使用 this 指代全局对象


function hello(){

   this.x = 1;

   console.log(this.x)

}


hello();

//此时控制台打印1


2.作为对象方法调用,this 指代上级对象


function hello(){

   console.log(this.x)

}


var s = {};

s.x = 1;

o.m = hello;

o.m();

//此时控制台打印1


3.作为构造函数调用,this 指代new 出的对象


function hello(){

   this.x = 1;

}


var s = new hello();

console.log(s.x)

//运行结果为1,为了表明这是this不是全局对象,我们对代码做一些改变


var x = 2;

function hello(){

   this.x = 1;

}


var o = new hello();

console.log(x)


4.apply 调用 ,apply方法作用是改变函数的调用对象,此方法的第一个参数为改变后调用这个函数的对象,this指代第一个参数


var x = 0;

function hello(){

   console.log(this.x)

}


var h = {};

h.x = 1;

h.m = hello;

h.m.apply();  //输出为0


h.m.apply(h) //输出1


综上可知,this就是一个指针,this的指向并不是函数被声明时的环境。this不是固定不变的,它会根据自身所执行的环境的不同而不同。


与其它语言当中的this不同的是,JS当中的this总是指向一个对象。而具体是指向哪一个对象,则要看其运行时是基于哪一个函数的执行环境所动态绑定的。


我是小职,记得找我

✅ 解锁高薪工作

✅ 免费获取基础课程·答疑解惑·职业测评

web前端开发Javascript基础入门--javascript中的this用法

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程