您的位置:首页 > Web前端 > JavaScript

js 的执行过程

2017-03-19 17:55 176 查看
首先来看一下LHS和RHS

  LHS:是赋值操作的左侧,可以理解为赋值操作的目标是谁

  RHS:是赋值操作的右侧,谁是赋值操作的源头。

接下来看看这段代码的执行过程:

  function foo(a){

    console.log(a):

  }

foo(2);

我们把这段代码想想成一段对话:

  引擎:作用域,我需要对foo 进行RHS 引用,你见过吗

作用域:我见过呀,编译器刚刚声明了,他是一个函数,给你,

  引擎:好,来执行一下foo

  引擎:作用域,我需要对a进行一次LHS,你见过吗

作用域:编译器把a设置成了一个形式参数,给你

引擎:我要把2 赋值给a

引擎:作用域,我又要对console进行一次RHS引用,你见过吗

作用域:哦 这个是内置对象,给你

引擎:我看看里面有没有log(),哦 ,找到了

引擎:作用域,在帮查下a的RHS引用,

作用域:这个变量没有动过,给你

引擎:我来把a的值传递给log吧
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: