javascript基础点
以下是自己学习JavaScript中遇到的问题,网上的这些博文给出了很好的解答,在此一并小计一下。
PS:《javascript高级程序设计》值得一读。
- 立即执行函数(function(){…})() 与 (function(){…}()) 的区别? 解答
- 作用域的问题 ,js里只有函数作用域:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17var color="red";
function change(color){
/*
在函数作用域内有一个color的局部变量。
若不是这样,alert(color)使浏览器报color is not defined的错误
*/
alert(color);
color="blue";
}
//这里是引用外部的全局变量
function change2(){
color="blue";
}
change();// undefined
change(color);// red
change2();
alert(color);
在执行change()时声明了局部变量color但未初始化所以是undefined;执行change(color)时声明并初始化了局部变量所以是red,紧接着color="blue"
修改了局部变量的值.