美文网首页
《你不知道的js》----上卷笔记

《你不知道的js》----上卷笔记

作者: _小小苏_ | 来源:发表于2018-04-27 17:58 被阅读0次

1. LHS和RHS查询。
他们都是由引擎进行的,取决于变量出现在赋值操作的左侧还是右侧。
如果查找的目的是对变量进行赋值,那么就会使用LHS查询; 如果目的是获取变量的值,就会使用RHS查询

2. 变量提升,函数优先。
1)首先定义声明是由引擎在编译阶段进行的;赋值会被停留在原地等待执行阶段。
2)函数声明会被提升,但是函数表达式却不会被提升(包括具名的函数表达式)。

例1:
foo();     //TypeError      foo为undefined,还不能被当做函数执行
bar();    //ReferenceError
var foo = function bar(){
  //....
};
其相当于:
var foo;
foo();
bar();
foo = function(){
  var bar = self;
  //...
}
例2:
foo();   //3
function foo(){   console.log(1);  };  
var foo = function(){  console.log(2);  };  
function foo(){   console.log(3);  }; 
foo();   //2

相关文章

  • 《你不知道的js》----上卷笔记

    1. LHS和RHS查询。他们都是由引擎进行的,取决于变量出现在赋值操作的左侧还是右侧。如果查找的目的是对变量进行...

  • 你不知道的JS(上卷)

    作用域是什么 1.1编译原理 JavaScript引擎编译的步骤与传统的编译语言类似。程序中的一段源代码在执行前会...

  • 你不知道的JS(上卷)笔记——对象总结

    本文目录: JS中的所有内置对象 创建对象的方法 深拷贝和浅拷贝(通用方法参考之前的文章,特列方法重新总结下) 属...

  • 深入研究原型

    以下笔记参考自《你不知道的JavaScript上卷》 一.原型 1.[[Prototype]]是什么? 它是Jav...

  • 读书笔记--你所不知道的js(上卷)

    第一章 编译原理 js是一门编译语言 传统编译语言流程: 分词/词法分析:把字符串分解成有意义的代码块 解析/语法...

  • 你不知道的JS(上卷)笔记——this全面解析总结

    定义 个人理解:this 是一个记录上下文的对象 作用 通过它我们可以寻找程序运行时我们需要的某些上下文信息 更改...

  • 你不知道的JS-上卷

    作用域整体理解:JS作用域分为函数作用域,全局作用域,with和try catch形成的块级作用域。 JS引擎在编...

  • this疏通 二

    该笔记参考自《你不知道的JavaScript上卷》 一.this全面解析 1.调用位置 ①调用栈是什么? 为了到达...

  • 对象的遍历 | 混合对象"类"

    该笔记参考自:《你不知道的JavaScript上卷》 一.对象的遍历 1.for...in循环可以用来遍历对象的可...

  • (原型)继承 | 对象关联

    该笔记参考自《你不知道的JavaScript上卷》 一.(原型)继承 1.检查"类"关系 假设现在有个对象a,如果...

网友评论

      本文标题:《你不知道的js》----上卷笔记

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