javascript 原型链和继承(2)

javascript 原型链和继承

作用域

var a = 1;
function b(){
    var a = 2;
    function c(){
        var a = 3;
        console.log(a);
    }
    c();
}
b();//执行结果:3

作用域是针对变量的,比如我们创建了一个函数,函数里面又包含了一个函数,那么现在就有三个作用域
优先在函数c的作用域中找,找不到就去b的作用域找,如果找不到就去全局作用域找,直到找到为止.
作用域的优先级:函数c>函数b>全局作用域
但是在函数b中,不能访问函数c中的变量或函数.
打个比方:
你家里来了客人,客人不能进入你的房间,只能呆在客厅,
客人类似于b,你类似于c,你既可以访问你自己的房间,也可以访问客厅.
作用域
总结:作用域越小,优先级越高;小作用域找不到的就会去较大作用域中找,直到找到或者进入全局作用域.

原型链

var Person=function(name){
    this.name = name;
};
Person.prototype.sayName=function(){    
        console.log(this.name); 
}
var personOne=new Person("xl");

当调用personOne.sayName 时,优先在personOne中找,
若找不到就去Person.prototype中找,若找不到,则去Object.prototype中找:
原型链

参考:
javascript 原型链和继承(1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值