this对象解析

Posted 炎泽

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了this对象解析相关的知识,希望对你有一定的参考价值。

this在js中有着非常广泛的应用,但其所指的对象也常常让人摸不着头脑,简而言之: this指的就是调用函数的对象,最常见的莫过以下几种

1.直接使用函数,则为window对象

function a(){
	this.a= 1
	console.log(this)
}
a() //window对象

window对象代表一个浏览器窗口,在js里是全局对象,所有的全局变量和函数都是他的属性,因此调用函数a的自然是window对象

2.作为对象属性被调用,是该对象

var o= {
	a: 1,
	b: function(){
		this.a= 2
		console.log(this.a)
		console.log(this)
	}
}
o.b()

输出结果:

3.作为构造函数的属性被调用,指的是该实例对象

function o() {
	this.a= 1;
	this.b= ()=>{
		console.log(this)
	}
}
var o1= new o()
o1.b()

4.apply或call函数调用,根据语法指的是第一个参数

function a(val){
	console.log(val)
	console.log(this)
}
a.call(1, 2)

输出结果为:

1调用了a函数,并将2作为参数,因此this指向数字1

以上是关于this对象解析的主要内容,如果未能解决你的问题,请参考以下文章

vue路由对象($route)参数简介

解析:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

javascript编程中this解析

解析this指针

ios - Heroku 和 MongoDb 上的自定义解析服务器错误 3080:JSON 文本没有以数组或对象开头,并且允许未设置片段的选项

很实用的JQuery代码片段(转)