久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

詳解JavaScript 作用域

瀏覽:36日期:2023-10-21 08:36:57

作用域是可訪問變量的集合。

JavaScript 作用域

在 JavaScript 中, 對象和函數同樣也是變量。

在 JavaScript 中, 作用域為可訪問變量,對象,函數的集合。

JavaScript 函數作用域: 作用域在函數內修改。

JavaScript 局部作用域

變量在函數內聲明,變量為局部作用域。

局部變量:只能在函數內部訪問。

// 此處不能調用 carName 變量function myFunction() { var carName = 'Volvo'; // 函數內可調用 carName 變量}

因為局部變量只作用于函數內,所以不同的函數可以使用相同名稱的變量。

局部變量在函數開始執行時創建,函數執行完后局部變量會自動銷毀。

JavaScript 全局變量

變量在函數外定義,即為全局變量。

全局變量有 全局作用域: 網頁中所有腳本和函數均可使用。

var carName = ' Volvo'; // 此處可調用 carName 變量function myFunction() { // 函數內可調用 carName 變量}

如果變量在函數內沒有聲明(沒有使用 var 關鍵字),該變量為全局變量。

以下實例中 carName 在函數內,但是為全局變量。

// 此處可調用 carName 變量 function myFunction() { carName = 'Volvo'; // 此處可調用 carName 變量}

JavaScript 變量生命周期

JavaScript 變量生命周期在它聲明時初始化。

局部變量在函數執行完畢后銷毀。

全局變量在頁面關閉后銷毀。

函數參數

函數參數只在函數內起作用,是局部變量。

HTML 中的全局變量

在 HTML 中, 全局變量是 window 對象: 所有數據變量都屬于 window 對象。

//此處可使用 window.carName function myFunction() { carName = 'Volvo';}

你知道嗎?

你的全局變量,或者函數,可以覆蓋 window 對象的變量或者函數。局部變量,包括 window 對象可以覆蓋全局變量和函數。

補充

ES6 中的 let 關鍵字

let 允許你聲明一個作用域被限制在塊級中的變量、語句或者表達式。與var關鍵字不同的是,它聲明的變量只能是全局或者整個函數塊的。

let 語法:

let var1 [= value1] [, var2 [= value2]] [, ..., varN [= valueN]];

let 聲明的變量只在其聲明的塊或子塊中可用,這一點,與 var 相似。二者之間最主要的區別在于 var 聲明的變量的作用域是整個封閉函數。

let 和 var 的區別代碼實例:

function varTest() { var x = 1; if (true) { var x = 2; // 同樣的變量! console.log(x); // 2 } console.log(x); // 2}function letTest() { let x = 1; if (true) { let x = 2; // 不同的變量 console.log(x); // 2 } console.log(x); // 1}

以上就是詳解JavaScript 作用域的詳細內容,更多關于JavaScript 作用域的資料請關注好吧啦網其它相關文章!

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 柳州市| 宣威市| 黔西| 安康市| 峨山| 民丰县| 托克逊县| 荥经县| 温宿县| 广宁县| 潼南县| 都昌县| 鱼台县| 柘荣县| 临西县| 新建县| 惠来县| 巩义市| 个旧市| 瑞金市| 南阳市| 杭锦旗| 南雄市| 保定市| 凤城市| 开封县| 来凤县| 资阳市| 施甸县| 新竹县| 宜宾市| 英超| 长乐市| 云浮市| 甘南县| 尤溪县| 景东| 尼木县| 丰县| 石嘴山市| 门源|