美文网首页
js进阶(1.2)词法作用域

js进阶(1.2)词法作用域

作者: slTrust | 来源:发表于2017-12-13 23:11 被阅读0次

fn1 调用的时候不会立即执行
而是会生成一个抽象语法树
校验里面的每句话 如果有错误就停止执行
没错再从头开始执行

一个函数能访问那些变量 在做词法分析的时候就确定了

词法树分析的是语义
只能确认a就是这个函数内部的a
不能确定的是“值”

var global = 1;
function fn1(param1){
    var local1 = 'local1';
    var local2 = 'local2';
    function fn2(param2){
        var local2 = 'fn2 local2';
        console.log(local1);
        console.log(local2);
    }

    function fn3(){
        var local2 = 'fn3 local2';
        fn2(local2);
    }
}

经典面试题

var a = 1;
function b(){
  console.log(a)  // a一定是1吗?
}

你在看看

var a =1;
function b(){
  console.log(a);
}
...若干代码后 突然一句
a = 2;
b();  //

相关文章

  • js进阶(1.2)词法作用域

    fn1 调用的时候不会立即执行而是会生成一个抽象语法树校验里面的每句话 如果有错误就停止执行没错再从头开始执行 ...

  • js作用域

    词法作用域 -js采用的是词法作用域,函数的作用域基于函数创建的位置。

  • JavaScript作用域和变量提升

    一、JS的作用域 1.JS采用词法作用域 首先,我们得知道JavaScript采取的是词法作用域,而不是动态作用域...

  • 容易错误的js

    JS词法作用域

  • 第八节: JavaScript中this指向问题

    1. this指向问题 1.1 认识词法作用域 其实我们js中的作用域就是词法作用域,我们会发现词法作用域最重要的...

  • 第八节 JavaScript中this指向问题

    this指向问题 1.1 认识词法作用域 其实我们js中的作用域就是词法作用域,我们会发现词法作用域最重要的特征是...

  • JS 作用域、作用域链、闭包、垃圾回收

    Scopes JS的作用域是静态作用域(static scope),也可以称为词法作用域(lexical scop...

  • 词法作用域&动态作用域

    词法作用域(静态作用域) 词法作用域也叫静态作用域,jsvascript为词法作用域。词法作用域关心的是你的函数申...

  • 词法作用域

    我们知道JavaScript并不具有动态作用域,它只有词法作用域,什么是词法作用域? 一、 词法作用域 词法作用域...

  • 你不懂的js上卷(一)

    基本概念 js引擎 编译器 作用域变量赋值操作 词法作用域(定义词法阶段的作用域) 1.由变量或者函数声明时的...

网友评论

      本文标题:js进阶(1.2)词法作用域

      本文链接:https://www.haomeiwen.com/subject/ykltwxtx.html