Thursday, November 12, 2009

javascript的var关键字

var name = 'jessinio';
function foo() {
    alert(name);
    name = 'nio';
};

foo();
alert(name);

与其实语言对比, 上面的代码很容易理解: 就是alert一次, 再修改函数外面name变量的值, 这个值被称为全局变量. 在js中不需要global关键字来声明, 当如果这样呢:
var name = 'jessinio';
function foo() {
    alert(name);
    var name = 'nio';
};

foo();
alert(name);

多了红色的var . 比如python:
name = 'jessinio'
def foo():
    print name
    name = ""
foo()
 * 将会出错!

根据学习. js中的var这样:
1. 代码块中的var将使变量的作用范围局限于块中
2. js的全局变量说穿了就是window对象的属性. 例如:
var myfunc = function (){ my = 'global variable scope'};
myfunc()
alert(window.my);
* 增加global变量就是为window增加属性

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.