zoukankan      html  css  js  c++  java
  • 原型链与作用域链、执行上下文

    学习文章---汤姆大叔的博客

    总结笔记

    原型链:

    每个对象都有一个__proto__隐式原型属性,当对象在自身的基本属性中找不到所需的属性,它将沿着__proto__链去找。

    作用域链:

    所有变量都存储在变量对象VO中,当在变量对象找不到时,将会往上一级执行上下文的变量对象中查找。with,catch语句会改变作用域链。

    二维查找:

    首先,沿着对象的作用域链找到上一个作用域链节点,然后,在当前的作用域链节点查找,如果查找不到,就沿着原型链查找,接着,如果还是找不到,就继续找下一个作用域链节点。

    注意:活动对象(函数)没有原型

    执行上下文堆栈

    当程序开始时,会进入全局上下文环境。调用函数,就会进入函数的执行上下文。eval也是一个函数。

    变量对象

    全局上下文变量对象(全局对象)(VO):①存储变量声明、函数声明。 ②在任何地方都可以访问,在整个程序结束后才销毁。

    函数上下文变量对象(AO):存储变量声明、函数声明、arguments对象、函数的形参

    注意:变量对象中不存储函数表达式

  • 相关阅读:
    LSA
    DBSCAN
    层次聚类
    crontab 不产生邮件
    vue页面添加当前日期,并且格式化
    SQL去重复数据
    Idea防沉迷插件StopCoding的安装使用教程
    动漫
    intellij-idea开启rundashboard配置
    SpringCloud之Eureka注册中心原理及其搭建
  • 原文地址:https://www.cnblogs.com/xuhaodong/p/javascript.html
Copyright © 2011-2022 走看看