arguments和函数内定义的变量或函数->父级->下一个父级->.....->全局环境中的变量或函数 if(true){ var a=1; } console.log(a);js没有块级作用域, 变量a直接添加到当前的执行环境中。 java有块级作用域,if语句结束后会销毁if中定义的变量 ...
分类:
Web程序 时间:
2016-08-01 15:22:15
阅读次数:
169
代码解析至少分两步 1):查找var,function参数例如下面这个例子 a= 未定义 fn1={alert(2)}函数的话,是整个整体 2):逐行读代码:类似=+-%*等都是表达式,表达式可以改变值 example1: <script> alert(a) //最终结果:undefiner var ...
分类:
Web程序 时间:
2016-07-24 16:13:03
阅读次数:
155
恢复内容开始 浏览器: JS解析器:这儿理解为两步1)JS的预解析:“找一些东西”:var function 参数; (1)所有的变量,在正式运行代码之前,都提前赋一个值:未定义 a=undefined;(2)所有的函数,在正式运行代码之前,都是整个函数块 fn1=function fn1(){al ...
分类:
Web程序 时间:
2016-06-27 21:25:12
阅读次数:
216
1.对js作用域的理解。 作用域 作用域分为全局作用域和函数作用域,我们可以理解为变量的生存环境(空间)。全局作用域包含函数作用域,函数作用域里的变量可以访问到全局作用域中的变量,但是反之则不行。 变量提升 在js作用域中还有变量提升的现象(只有var 声明的变量才会有变量提升,window声明的不 ...
分类:
Web程序 时间:
2016-06-14 15:55:16
阅读次数:
265
1、JSONP JSONP参考教材:http://kb.cnblogs.com/page/139725/ JSONP是利用HTML的script标签一下特性: 1)引用外部资源不受跨域问题影响 2)script标签加载完js资源后立马自动执行加载的js 3)新加载的js作用域为全局 script标签 ...
分类:
Web程序 时间:
2016-06-13 14:57:27
阅读次数:
166
1.js作用域(全局变量,局部变量)内部可以访问外部,但外部的不能访问内部的(局域变量) 2.不用var 定义变量时,会默认为是全局变量(不规范,不推荐) //给未声明的变量赋值,此变量就会变成全局变量;var a=b=10; 可以解析成 b=10;var a=b; 也就是b为全局变量,a为局部变量 ...
分类:
Web程序 时间:
2016-06-01 16:49:22
阅读次数:
234
一 作用域,作用域链 先上代码 此时打印出来的 按顺序分别是undefine,local,为什么第一个是undefined呢,摘抄下js作用域原话: Javascript没有块级作用域,而是函数作用域. 所谓函数作用域就是说:-》变量在声明它们的函数体以及这个函数体嵌套的任意函数体内都是有定义的。 ...
分类:
其他好文 时间:
2016-05-26 09:59:46
阅读次数:
118
1、JavaScript的作用域链 首先看下下面这段代码: 观察alert(rain);这句代码。JavaScript首先在inner函数中查找是否定义了变量rain,如果定义了则使用inner函数中的rain变量;如果inner函数中没有定义rain变量,JavaScript则会继续在rainma ...
分类:
Web程序 时间:
2016-05-19 15:07:59
阅读次数:
161
一、js没有块级作用域 在c,java等语言中花括号里的代码都有自己的作用域,而js花括号没有块级作用域,经常会导致一些困惑,不明所以。例如: console.info(color); if(true){ var color = "blue"; } console.info(color); 输出结果 ...
分类:
Web程序 时间:
2016-05-09 20:15:42
阅读次数:
129
一直对Js的作用域有点迷糊,今天偶然读到JavaScript权威指南,立马被吸引住了,写的真不错。我看的是第六版本,相当的厚,大概1000多页,Js博大精深,要熟悉精通需要大毅力大功夫。 一:函数作用域 先看一小段代码: [javascript] view plain copy var scope= ...
分类:
Web程序 时间:
2016-04-26 09:41:49
阅读次数:
253