Javascript中变量特性小结

来源:互联网 发布:ppt其他用途知乎 编辑:程序博客网 时间:2024/04/30 09:44
最近在学JS,一开始对JS变量的作用域不太了解,运用起来不太顺手,现在对其做一个简单的总结。JS变量分为全局变量和局部变量全局变量:在js文件或者是HTML中定义的变量为全局变量,可在其他js文件中引用,前提就是这几个js文件在同一个页面中被引用。其次,如果在js函数中声明变量时如果没有在变量前加入var关键字,那么该变量将成为全局变量,否则是局部变量。不过,只有当该函数被调用后,才会创建该全局变量。如果多个文件中存在同名的全局变量,那么后来生成的全局变量将覆盖之前声明的变量,个人觉得在整个页面生存周期内,全局变量是唯一的,由变量名进行区分,即此后再声明的同名全局变量并没有真正地生成,而仅仅是覆盖先前的值。局部变量:对于局部变量,比较特殊的一点就是“预解释”。 var scope="global"; function f(){ alert(scope); var scope="local"; alert(scope); } f();在调用函数f()的时候,会先对内部变量scope声明,但不赋值,然后再执行函数中的语句,所以输出结果为undefined和local,而不是global和local。