原型链相关

 一、

var A = function() {};
A.prototype.n = 1;
var b = new A();
A.prototype = {
  n: 2,
  m: 3
}
var c = new A();

console.log(b.n); 
console.log(b.m);

console.log(c.n);
console.log(c.m);

//答案

b.n -> 1
b.m -> undefined;

c.n -> 2;
c.m -> 3;

二、 

var F = function() {};

Object.prototype.a = function() {
  console.log('a');
};

Function.prototype.b = function() {
  console.log('b');
}

var f = new F();

f.a();
f.b();

F.a();
F.b();


//答案

f.a() -> a
f.b() -> f.b is not a function

F.a() -> a
F.b() -> b

三、

function Person(name) {
    this.name = name
}
let p = new Person('Tom');

问题1:1. p.__proto__等于什么?

问题2:Person.__proto__等于什么?



答案1:Person.prototype

答案2:Function.prototype

四、

var foo = {}
var F = function(){}

Object.prototype.a = 'value a';
Function.prototype.b = 'value b';

console.log(foo.a);
console.log(foo.b);

console.log(F.a);
console.log(F.b);


//答案

foo.a => value a
foo.b => undefined
F.a => value a
F.b => value b

Object.prototype.__proto__    //null
Function.prototype.__proto__  //Object.prototype
Object.__proto__              //Function.prototype

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值