• 前端随心记---------Javascript系列(第十七节.闭包)


    闭包

    原型
    构造函数的this指向实例对象
    构造函数function Human(){}
    实例对象var h1=new Human( );

    实例对象的_proto_指向其构造函数的prototype(原型),原型上的内容是所有对象共享的
    函数中this的指向在调用的瞬间决定

    document.body.onclick=function(){
    事件函数的this指向事件源
    }

    作为全局的普通函数调用时,函数中的this指的是widow
    例如 function Human(){ } 普通函数调用Human()
    构造函数中的this指向实例化对象
    例如 var h1=new Human( )

    函数调用方法
    bind apply call

    原型链
    实例对象上属性搜索规则
    1 首先在实例对象上找
    2 再去构造函数的原型上找
    3 再去原型对象的构造函数的原型上找
    4 再去原型对象的原型对象的原型对象上找
    原型链就是实例对象和原型对象组成的一个链条,这里的连接箭头就是__proto__


    通过原型链继承,缺点:
    1 继承的构造函数中的引用类型对于所有的实例都是共享的
    2 没有办法在不影响所实例的情况下给要继承的构造函数传参
    借用构造函数继承缺点:无法继承原型链上的方法

    集思广益,仅供学习,侵权即删!!
  • 相关阅读:
    DAY21
    DAY20
    DAY19
    @Autowired注解和静态方法
    PageHelper.startPage和new PageInfo(list)的一些探索和思考
    escape()、encodeURI()、encodeURIComponent()区别详解
    每日日报29
    1dialog 表单最基本的封装
    mongoose
    数组
  • 原文地址:https://www.cnblogs.com/hudunyu/p/11685442.html
Copyright © 2020-2023  润新知