JavaScript 作用域
作用域可訪問變量的集合。
JavaScript 作用域
在 JavaScript 中, 對(duì)象和函數(shù)同樣也是變量。
在 JavaScript 中, 作用域?yàn)榭稍L問變量,對(duì)象,函數(shù)的集合。
JavaScript 函數(shù)作用域: 作用域在函數(shù)內(nèi)修改。
JavaScript 局部作用域
變量在函數(shù)內(nèi)聲明,變量為局部作用域。
局部變量:只能在函數(shù)內(nèi)部訪問。
實(shí)例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <p>局部變量在聲明的函數(shù)內(nèi)可以訪問。</p> <p id="demo"></p> <script> myFunction(); document.getElementById("demo").innerHTML = "我可以顯示 " + typeof carName; function myFunction() { var carName = "Volvo"; } </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
因?yàn)榫植孔兞恐蛔饔糜诤瘮?shù)內(nèi),所以不同的函數(shù)可以使用相同名稱的變量。
局部變量在函數(shù)開始執(zhí)行時(shí)創(chuàng)建,函數(shù)執(zhí)行完后局部變量會(huì)自動(dòng)銷毀。
JavaScript 全局變量
變量在函數(shù)外定義,即為全局變量。
全局變量有 全局作用域: 網(wǎng)頁中所有腳本和函數(shù)均可使用。
實(shí)例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <p>全局變量在任何腳本和函數(shù)內(nèi)均可訪問。</p> <p id="demo"></p> <script> var carName = "Volvo"; myFunction(); function myFunction() { document.getElementById("demo").innerHTML = "我可以顯示 " + carName; } </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
如果變量在函數(shù)內(nèi)沒有聲明(沒有使用 var 關(guān)鍵字),該變量為全局變量。
以下實(shí)例中 carName 在函數(shù)內(nèi),但是為全局變量。
實(shí)例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <p> 如果你的變量沒有聲明,它將自動(dòng)成為全局變量: </p> <p id="demo"></p> <script> myFunction(); document.getElementById("demo").innerHTML = "我可以顯示 " + carName; function myFunction() { carName = "Volvo"; } </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
JavaScript 變量生命周期
JavaScript 變量生命周期在它聲明時(shí)初始化。
局部變量在函數(shù)執(zhí)行完畢后銷毀。
全局變量在頁面關(guān)閉后銷毀。
函數(shù)參數(shù)
函數(shù)參數(shù)只在函數(shù)內(nèi)起作用,是局部變量。
HTML 中的全局變量
在 HTML 中, 全局變量是 window 對(duì)象: 所有數(shù)據(jù)變量都屬于 window 對(duì)象。
實(shí)例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <p> 在 HTML 中, 所有全局變量都會(huì)成為 window 變量。 </p> <p id="demo"></p> <script> myFunction(); document.getElementById("demo").innerHTML = "我可以顯示 " + window.carName; function myFunction() { carName = "Volvo"; } </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
你知道嗎?
![]() | 你的全局變量,或者函數(shù),可以覆蓋 window 對(duì)象的變量或者函數(shù)。 局部變量,包括 window 對(duì)象可以覆蓋全局變量和函數(shù)。 |
---|