WEB前端開發學習----7.JavaScript 中 var 的重要性

javascript 是弱數據型語言,也就是說聲明變量時不須要指定數據類型。而是在執行時由瀏覽器中的js引擎來決定。javascript

通常來講,咱們須要用var來聲明變量,可是寫不寫有什麼區別呢?html

 

先看一段代碼:java

[html]  view plain copy
 
  1. <script type="text/javascript">  
  2. var a=3;  
  3. function test1(){  
  4.     a=100;  
  5. }  
  6. test1();  
  7. alert(a);  
  8.   
  9. var b=3;  
  10. function test2(){  
  11.     var b=100;  
  12. }  
  13. test2();  
  14. alert(b);  
  15.   
  16. c=3;  
  17. function test3(){  
  18.     c=100;  
  19. }  
  20. test3();  
  21. alert(c);  
  22.   
  23. </script>  



 

運行結果爲 100  ,3  ,100瀏覽器

通過測試,就結果就很清楚了。在局部環境中,變量若是沒有用var 來聲明,直接進行賦值,那麼這個局部的變量會被javascript當成全局變量。要命的是,若是這個變量是一個函數,那結果就可想而知的慘了。函數

 

也就是說,若是你不用var,那麼這個js引擎會一層一層地向上找父做用域中的變量,若是找到了,就用,若是找不到了,就會幫你定義一個全局的變量。上面這個例子充分說明了這一點。因此,若是你想在當前的做用域用聲明變量,你必定要用var。測試

相關文章
相關標籤/搜索