天天看點

javascript中變量

全局變量和局部變量的差別和比較:

  1. 全局變量的作用域是全局的,在javascript中處處都可以定義;局部變量是局部的,作用域是局部性的。
  2. 全局作用域中編寫代碼時可以不使用var,但是局部變量必須使用var。
  3. 在函數體内部,局部變量的優先級比同名的全部變量高。
1 var scope = "global";
2 function fn(){
3   alert(scope);
4   var scope = "local";
5   alert(scope);
6 }
7 fn();      

起初以為alert第一次調用會顯示“global”,因為申明局部變量的var語句還沒有被執行。但是,由于這個作用域規則的限定,輸出的并不是“global”。局部變量在整個函數體内都是有定義的,但是在執行var語句之前,它是不會被初始化的。這個函數等價于:

1 function fn(){
2     var scope;
3     alert(scope);
4     scope = “local”;
5     alert(scope);
6 }      

轉載于:https://www.cnblogs.com/Eleanore/archive/2012/06/04/2534613.html

繼續閱讀