第24天 JavaScript原型,原型链 ? 有什么特点?

一、说说你对作⽤域链的理解

  • 作⽤域链的作⽤是保证执⾏环境⾥有权访问的变量和函数是有序的,作⽤域链的变量只能 向*问,变量访问到 window对象即被终⽌,作⽤域链向下访问变量是不被允许的
  • 简单的说,作⽤域就是变量与函数的可访问范围,即作⽤域控制着变量与函数的可⻅性和 ⽣命周期

二、原型

  • 每个对象都会在其内部初始化⼀个属性,就是 prototype (原型),当我们访问⼀个对象的 属性时
  • 如果这个对象内部不存在这个属性,那么他就会去 prototype ⾥找这个属性,这个
    prototype ⼜会有⾃⼰的 prototype ,于是就这样⼀直找下去,也就是我们平时所说的 原型链的概念
  • 关系: instance.constructor.prototype = instance.__p
  • 特点:
    JavaScript 对象是通过引⽤来传递的,我们创建的每个新对象实体中并没有⼀份属于 ⾃⼰的原型副本。当我们修改原型时,与之相关的对象也会继承这⼀改变
  • 当我们需要⼀个属性的时, Javascript 引擎会先看当前对象中是否有这个属性, 如果没 有的
  • 就会查找他的 Prototype 对象是否有这个属性,如此递推下去,⼀直检索到 Object 内 建对象
上一篇:Java中类与对象和类的继承


下一篇:leetcode刷题_JAVA(24)哈希表相关问题讲解(4)LRU缓存机制(#146)