为了账号安全,请及时绑定邮箱和手机立即绑定

关于js的prototype

关于js的prototype

西兰花伟大炮 2016-12-04 19:05:07
function animal(){ var action = "eat";} animal.prototype.action = "walk"; var dog = new animal(); dog.action   //这里得到的walk        dog.__proto__ 指向 animal.prototype     构造出来的dog只能访问animal的原型属性?
查看完整描述

1 回答

已采纳
?
stone310

TA贡献361条经验 获得超191个赞

var action = "eat";这个根本就不是属性,构造函数内部属性是this.action="eat"这么写,你的写法是定义函数内部变量,外界无法获取(可以用闭包获取)

查看完整回答
反对 回复 2016-12-05
  • 西兰花伟大炮
    西兰花伟大炮
    当我改为 this.action = "eat" 查找到的是eat 我就想明白new出来的函数,向上查找,需要经过构造函数,还是直接通过__proto__查找构造函数的原型
  • stone310
    stone310
    先找构造函数本身,没有再往下找,优先级也是如此
  • 西兰花伟大炮
    西兰花伟大炮
    我通过dog.__proto__.action就直接查找到构造函数原型了,那__proto__是一个快捷路径哦,我还没明白this.name 与 var name 的区别 ,是向上找吧?
点击展开后面1
  • 1 回答
  • 0 关注
  • 1270 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信