作用域链(1-1-2)
来源:互联网 发布:淘宝店上传图片的尺寸 编辑:程序博客网 时间:2024/06/05 03:50
第一节:预解释作用域this原理及应用
课时2:作用域链
如何区分私有变量和全局变量:
- 在全局作用域下声明的(预解释的时候)的变量是全局变量
- 在私有作用域中声明的变量和函数的形参都是私有的变量
- 在私有作用域中,代码执行的时候遇到了一个变量,首先需要确定他是否为私有的变量,如果是私有的变量,那么和外面的没有任何的关系;如果不是私有的,则往当前作用域的上级作用域进行查找,如果上级作用域也没有则继续查找,一直找到window为止
例题1:
console.log(total); //undefinedvar total = 0;function fn(num1,num2){ console.log(total); //undefined var total = num1+num2; console.log(total); //300}fn(100,200);console.log(total); //0
当函数执行的时候,(直接目的:让函数体中的代码执行),首先会形成一个新的私有的作用域,然后按照如下的步骤执行:
- 如果有形参,先给形参赋值
- 进行私有作用域中的预解释
- 私有作用域中的代码从上到下执行
函数形成一个新的私有作用域保护了里面的私有变量不受外界的干扰(外面修改不了私有的,反之亦然) -> 闭包。
例题2:
console.log(total); //undefinedvar total = 0;function fn(num1,num2){ console.log(total); //0 -> total不是私有的,找全局下的total total = num1+num2; console.log(total); //300}fn(100,200);console.log(total); //300
阅读全文
0 0
- 作用域链(1-1-2)
- 作用域(1)---Js作用域链及变量作用域
- js的作用域链(1)
- (1)Javascript之作用域链
- javascript作用域链-(1)
- 变量作用域1
- 函数、作用域1
- 1,JavaScript 作用域
- js作用域(函数作用域、变量作用域、作用域链、with语句)
- JS——作用域链(1)
- 作用域&作用域链
- Js作用域与作用域链详解(转)
- JavaScript中的作用域和作用域链(一)
- JavaScript中的作用域和作用域链(二)
- JavaScript笔记(4)作用域与作用域链
- 面试题1:作用域
- OC-属性作用域(1)
- 变量和作用域1
- Spark性能优化之数据倾斜技术方案
- Oracle SQL递归实现
- Unity UI系统-NGUI-基本组件(一)
- CSS Modules 用法教程
- Android常见异常
- 作用域链(1-1-2)
- JDK8中Lambda表达式的使用
- Vuforia Tools
- 为什么远程连接数据库速度会很慢?
- 第二篇 HTML 常用元素及属性值
- 全局变量的细节问题(1-1-3)
- poj 1503
- 【网络流24题】深海机器人(最大费用流)
- Unity UI系统-NGUI-AtlasMaker