同样是对象为什么有的prototype有的没有

来源:4-3 [JavaScript]属性操作

枯补丁

2016-04-05 16:30

var f = {x:1} 这里的f是一个对象,为什么f.prototype.y=2 这个会报错; 而function f(){} f.prototype.y=2 这个就不会报错

写回答 关注

4回答

  • qq_慕慕947699
    2019-10-22 10:37:57

             ①__proto__和constructor属性是对象所独有的;

            ② prototype属性是函数所独有的,因为函数也是一种对象,所以函数也拥有__proto__和constructor属性。


  • AsyncNooby
    2016-08-02 17:57:20

    你要明白数据的类型是什么,var f那个是一个对象,第二个是function是个构造函数,prototype是函数拥有的.


  • 黑店老板
    2016-07-10 11:41:46

    函数function才有prototype这个默认属性。对象是没有这个默认属性的。对象有一个隐藏属性为__proto__

    Crazy丶...

    是不是可以理解成对象上没有prototype这个属性,对象可以从构造函数【F】那里继承prototype得到???

    2017-02-27 14:28:58

    共 1 条回复 >

  • 清波
    2016-04-05 17:15:38

    f.prototype是undefined

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281111 学习 · 1020 问题

查看课程

相似问题