say() {
}
这种形式是往原型上添加方法
say = function(){}
为什么这样就是给实例添加方法了,区别是什么?
在类中:sex = 'male';这种形式是给实例添加属性,那么如何给原型添加属性呢?
登陆购买课程后可参与讨论,去登陆吧
同学你好,解答如下:
写成say=function(){},会把这个say当成一个属性(类似于sex)而不是一个方法来解析,所以会把它添加在实例上:
祝学习愉快!
1、对于方法:在构造函数constructor中,使用this添加的方法,则是定义在实例上的(this指代实例);而写在构造函数constructor外的方法,则是定义在原型上的;即书写位置不同、书写方式不同(一个使用了this、一个没有),添加的位置不同:
2、对于sex这样的属性:不论是写在constructor内,还是写在constructor外,都是添加在实例上的:
3、如果想在原型上定义sex这样的属性,可以如下这样写:
还有个疑问:say = function(){}
这种方式,即使写在constructor外面也是给实例添加方法,而不是原型,这是为什么
这种写法是属性的写法,把say当属性处理
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
登录后可查看更多问答,登录/注册
前端技术快速更迭,人才紧缺。带你从0基础开始,成为Web全栈工程师,转行就业更顺畅。
92 2
44 2
74 4
30 1
32 1
在线咨询
领取优惠
免费试听
领取大纲
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星