js—类和对象的三个注意点
1、在 ES6 中类没有变量提升,所以必须先定义类,才能通过类实例化
2、类里面的共有的属性和方法一定要加this使用
构造函数在constructor中调用
(2)可以用button在constructor中调用函数方法
这时候虽然可以调用sing这个方法,但里面打印的this.uname却是undefined
这时候就是第三个注意点:
3、constructor 里面的this 指向的是 创建的实例对象,指向实例对象ldh
(1)constructor 里面的this 指向的是 创建的实例对象
控制台:
(2)在新的方法里面调用this,他还是指向实例对象ldh,因为ldh调用了这个函数
控制台:
(3)所以刚刚按钮触发的this.sing中的this指向的是button本身,所以this.uname找不到
控制台:
(4)如果想要找到uname,就可以先定义全局变量that,然后在constructor中将this赋值给全局变量that
然后在sing方法中使用that.uname
控制台:
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果