发布网友 发布时间:2022-05-03 11:40
共2个回答
热心网友 时间:2022-04-22 17:33
在JS里,一切都是对象,所谓的class并不是传统语言上的定义或者声明,而是直接创建出来了(已分配内存)。热心网友 时间:2022-04-22 18:51
Myfunc默认只是一个函数,因此函数默认并没有myMethod这个成员方法。即便你函数内部定义了一个myMethod也是没用的,原因是:
Myfunc并没有运行过,因此内部没有执行的代码对外部是不会产生任何影响的。
this指向不明,即便你运行了Myfunc,但是this指向那个对象是动态判断的。
至于下面你使用了new就可以用实例对象调用myMethod方法。那是因为当一个函数通过new关键字调用时,这个函数就不再是一个普通的函数,而是变成了一个对象模板函数(即构造函数),此时函数内部的this指向的是new出来的对象,此时调用myMethod就显得顺理成章了。