js 中方法与参数作用域thatthis

JavaScript015

js 中方法与参数作用域thatthis,第1张

this是JS的关键字。代表函数运行时,自动生成的一个内部对象,this代表的是当前对象,只能在函数内部使用.

var that=this就是将当前的this对象复制一份到that变量中

还有---箭头函数---可以解决 that/this 作用域的问题。

没有参数

一个参数 (括号可加,可不加)

多个参数

let that = this 是一种常用的把this指向变量的写法,它的作用是为了在不同作用域中,都能够访问到this变量,避免this指针指向混乱。在小程序中,回调函数中的this指针会指向全局对象,而不是原本的作用域,所以通过let that = this的方式可以保留原本的作用域,以便在回调函数中仍能够访问到this变量。

实质上没有区别。

“关键字”就是 JS 本身已经使用了,具有一定特殊的含义,你就不能再用它们充当变量名啊方法名啊什么的。包括(按字母排序):break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with 等。

“保留字”实际上就是预留的“关键字”,意思是现在虽然现在还不是关键字(也就是本身还不具备特殊含义的),但是未来可能会成为关键字的,你一样是不能使用它们当变量名啊方法名的。包括(按字母排序):abstract、boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile 等。