关于this使用的几点疑惑
来源:3-5 ES6与小游戏资源加载器的封装
Echo鑫
2018-02-02
老师我想问下,construct()构造函数中定义类变量用this.map,这个this貌似是指向全局的,而function中的this,你说this.变量是指向value.onLoad方法内的,是不是this的作用域跟他所在的区域有关系?所以我就想到下面几个问题:
构造方法内的变量定义时为什么要带this,而不直接写变量名?
构造方法内和类中的this所修饰的变量是指向全局的,而方法内的this是指向这个方法内的变量,this的作用域跟他所在的区域有关系?
类变量/全局变量的定义是不是都得用this?对类变量的调用是不是也都得带上this.XX?而不能直接写变量名。
关于this的使用中总有些思路不清楚,老师你觉得应该注意什么,或者该怎么理解,才能在使用this时,不会犯一些低级错误.
写回答
1回答
-
其实吧,es5的this更多的是某个域内的引用,可以这样理解,就是比如传了一个内部function,那this就指向这个function本身。es6的箭头函数把这个this指向外面了,就是这样。其实面向对象里,this也是对外暴露这个方法或者变量,如果直接声明,外面是拿不到的。要不我回头给咱补补
012018-02-03
相似问题