這篇文章主要介紹了javascript定義變量時帶var與不帶var的區別,以一個簡單實例分析了變量定義時帶var與不帶var的執行原理及用法區別,需要的朋友可以參考下
本文實例分析了javascript定義變量時帶var與不帶var的區別。分享給大家供大家參考。具體分析如下:
直接看實例裡說明:
代碼如下:
<script language="javascript" type="text/javascript">
var abc=89;//帶var,表示全局變量
function test(){
var abc=80;//在函數內部,如果不帶var,表示使用函數外全局變量;帶上var,表示新定義一個全局變量
}
test();
window.alert(abc);
</script>
嚴格來說:函數體內不帶var,並不是指定義一個變量,而是進行變量賦值,即var abc;abc=8。在函數體內如果進行賦值 abc=80(不帶var),實際過程是這樣的——該語句先在函數體內查找變量abc,如果找不到,它會往上在函數體外繼續查找變量abc,如果還是找不到,最後沒有辦法,只能在函數體外定義變量var abc。
所以,為什麼
代碼如下:
function test(){
abc = 80;
}
能夠在函數外部直接調用變量abc,也就是這麼一個原因。
希望本文所述對大家的javascript程序設計有所幫助。