javascript this 用法实例代码解析

快乐打工仔 分类:实例代码

其实this的作用的一些细节随着ES版本的提高会有所不同。

比如在严格模式下this的指向就发生了一些改变,具体可以参阅严格模式下this的指向问题一章节。

下面介绍的this的用法都是基于非严格模式下的。

一.在全局环境下指向window:

console.log(this===window);

返回值是true,说明在全局环境中,this是指向window。

二.this指向对象:

在对象中,this就是指向对象本身的,代码实例如下:

var obj={
  webName:"犀牛前端部落",
  url:"pipipi.net",
  show:function(){
    console.log(this.webName);
  }
}
obj.show()

输出值是"犀牛前端部落",说明this是指向obj对象的。

要判断函数中的this指向,只需要明了一件事情就可以,那就是this指向调用此函数的对象。

也可以认为此函数属于哪个对象,里面的this就指向哪个对象。

更多内容可以参阅javascript this用法详解一章节。

三.apply,call改变函数的this指向:

使用上面两个方法可以改变this的指向。

具体可以参阅javascript apply()一章节。

四.new运算符的作用:

它对this的影响可以参阅js new运算符一章节。

回复

我来回复
  • 暂无回复内容