js 变量作用域
2015-09-27 21:13
597 查看
1.全局变量和局部变量当JS解析器执行时,首先就会在执行环境里构建一个全局对象,我们定义的全局属性就是做为该对象的属性读取,在顶层代码中我们使用this关键字和window对象都可以访问到它。而函数体中的局部变量只在函数执行时生成的调用对象中存在,函数执行完毕时局部变量即刻销毁。
test2(); var a=1;//全局变量 function aa (){ var a=2;//局部变量 alert(a); } alert(a); aa(); alert(a); alert(window.a); 2.没有用var 定义的都是全局变量;
function aa(){ a=10; } aa(); alert(window.a); 3.js的解析 1.var function 2.赋值
alert(a);//undefined var a=1; alert(a);//14:作用域链
a=10; function b(){ var a=20; function c(){ var a=30; console.log(a); } function cc(){ console.log(a); } c(); cc(); } b();
作用顺序,本级函数到上级函数一直到window;
相关文章推荐
- jsonp的工作原理
- jsop
- json
- JS 验证表单文本域输入空格问题
- [LeetCode][JavaScript]Pascal's Triangle II
- [LeetCode][JavaScript]Pascal's Triangle
- JavaScript -- BATweb笔试面试
- 20150927js学习回顾
- JavaScript高级程序设计之面向对象的程序设计之继承之原型链 第6.3.1讲笔记
- JSP的基础语法
- 深入javascript-继承机制
- Javascript--函数技巧
- [LeetCode][JavaScript]House Robber II
- [LeetCode][JavaScript]House Robber
- JavaScript中的值类型和引用类型
- JavaScript高级程序设计之面向对象的程序设计之创建对象之稳妥构造函数模式 第6.2.7讲笔记
- JavaScript高级程序设计之面向对象的程序设计之创建对象之寄生构造函数模式 第6.2.6讲笔记
- Javascript排序问题
- JavaScript高级程序设计之面向对象的程序设计之创建对象之动态原型模式 第6.2.5讲笔记
- 【JavaScript】【学习】一句话概括JavaScript