原型链 ,闭包与继承

Posted qydy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原型链 ,闭包与继承相关的知识,希望对你有一定的参考价值。

闭包的好处:

1.不会污染全局环境;

2.可以进行形参 的记忆,减少形参的个数,延长形参生命周期;

function add(x){
            return function(y){
                return (x+y);
            }
        }
        var sum=add(2);
        console.log(sum(5))//sum为7;
3.方便进行模块化开发;
 
 var moudle=(function(){
           var name=123;
           function init(){
               console.log(name);
           }
           return {
               get:init
           }
       })()
       moudle.get()//执行结果为123
 
 
 
继承:一个构造函数继承另一个构造函数中的方法,可以节省大量的重复;

function Man(name,age){
        this.name=name;
        this.age=age;
    }
    var person=new Man(‘judy‘,18)
    function Woman(name,age){
        this.sex=‘woman‘
        Man.call(this,name,age)
    }
    Woman.prototype=Man.prototype;
    var person1=new Woman(‘lisa‘,20)
    console.log(person1.name,person1.age,person1.sex)//结果为lisa 20 woman;
 
原型链查找:进行方法调用的时候,会先在实例自身上找,如果没有就去该实例原型上找;

    function People(){
        this.name=‘a people‘;

    }
    People.prototype.say=function(){
        this.age=‘10‘
        console.log(this.name,this.age)
    }
    var person=new People();
    console.log(person.say())//输出结果为 a people 10
 

以上是关于原型链 ,闭包与继承的主要内容,如果未能解决你的问题,请参考以下文章

深入理解javascript原型和闭包——继承

闭包和原型链

5.JavaScript原型链和继承详解

Js基础知识 - 原型链与继承精彩的讲解

JavaScript对象原型链继承闭包

JavaScript对象原型链继承和闭包