国产高清在线免费观看-国产高清在线免费无码-国产高清在线男人的天堂-国产高清在线视频-国产高清在线视频精品视频-国产高清在线视频伊甸园

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

[點晴永久免費OA]JS的 const、let、var區別是什么?

freeflydom
2024年6月28日 15:26 本文熱度 2150

ES2015(ES6) 新增加了兩個重要的 JavaScript 關鍵字: let 和 const

let 聲明的變量只在 let 命令所在的代碼塊內有效。

const 聲明一個只讀的常量,一旦聲明,常量的值就不能改變。

在 ES6 之前,JavaScript 只有兩種作用域: 全局變量 與 函數內的局部變量

在函數外聲明的變量作用域是全局的:

var carName = "Volvo";

// 這里可以使用 carName 變量

function myFunction() {

    // 這里也可以使用 carName 變量

}

局部變量:函數內使用 var 聲明的變量只能在函數內訪問,如果不使用 var 則是全局變量。

// 這里不能使用 carName 變量

function myFunction() {

    var carName = "Volvo";

    // 這里可以使用 carName 變量

}

// 這里不能使用 carName 變量

JavaScript 塊級作用域(Block Scope)

使用 var 關鍵字聲明的變量不具備塊級作用域的特性,它在 {} 外依然能被訪問到。

    let x = 2;

}

// 這里不能使用 x 變量

重新定義變量

使用 var 關鍵字重新聲明變量可能會帶來問題。

在塊中重新聲明變量也會重新聲明塊外的變量:

var x = 10;

// 這里輸出 x 為 10

    var x = 2;

    // 這里輸出 x 為 2

}

// 這里輸出 x 為 2

let 關鍵字就可以解決這個問題,因為它只在 let 命令所在的代碼塊 {} 內有效。

var x = 10;

// 這里輸出 x 為 10

    let x = 2;

    // 這里輸出 x 為 2

}

// 這里輸出 x 為 10

循環作用域

使用 var 關鍵字:

var i = 5;

for (var i = 0; i < 10; i++) {

    // 一些代碼...

}

// 這里輸出 i 為 10

使用 let 關鍵字:

var i = 5;

for (let i = 0; i < 10; i++) {

    // 一些代碼...

}

// 這里輸出 i 為 5

在第一個實例中,使用了 var 關鍵字,它聲明的變量是全局的,包括循環體內與循環體外。

在第二個實例中,使用 let 關鍵字, 它聲明的變量作用域只在循環體內,循環體外的變量不受影響。

HTML 代碼中使用全局變量

在 JavaScript 中, 全局作用域是針對 JavaScript 環境。

在 HTML 中, 全局作用域是針對 window 對象。

使用 var 關鍵字聲明的全局作用域變量屬于 window 對象:

var carName = "Volvo";

// 可以使用 window.carName 訪問變量

let carName = "Volvo";

// 不能使用 window.carName 訪問變量

const 關鍵字

const 用于聲明一個或多個常量,聲明時必須進行初始化,且初始化后值不可再修改。

const定義常量與使用let 定義的變量相似:

  • 二者都是塊級作用域

  • 都不能和它所在作用域內的其他變量或函數擁有相同的名稱

兩者還有以下兩點區別:

  • const聲明的常量必須初始化,而let聲明的變量不用

  • const 定義常量的值不能通過再賦值修改,也不能再次聲明。而 let 定義的變量值可以修改。


總結筆記:

使用var關鍵字聲明的全局作用域變量屬于window對象。

使用let關鍵字聲明的全局作用域變量不屬于window對象。

使用var關鍵字聲明的變量在任何地方都可以修改。

在相同的作用域或塊級作用域中,不能使用let關鍵字來重置var關鍵字聲明的變量。

在相同的作用域或塊級作用域中,不能使用let關鍵字來重置let關鍵字聲明的變量。

let關鍵字在不同作用域,或不用塊級作用域中是可以重新聲明賦值的。

在相同的作用域或塊級作用域中,不能使用const關鍵字來重置var和let關鍵字聲明的變量。

在相同的作用域或塊級作用域中,不能使用const關鍵字來重置const關鍵字聲明的變量

const 關鍵字在不同作用域,或不同塊級作用域中是可以重新聲明賦值的:

var關鍵字定義的變量可以先使用后聲明。

let關鍵字定義的變量需要先聲明再使用。

const關鍵字定義的常量,聲明時必須進行初始化,且初始化后不可再修改。


轉自菜鳥教程


該文章在 2024/6/28 15:28:44 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产人成精品综合欧美成人 | 麻豆嫩芽忘忧草一 | 亚洲人妻精品一区 | 韩日av无码一区三区 | 亚洲日韩精品一区二区三区无码 | 无码国产精品一区二区免费式芒果小说最新传媒中文字幕 | 自拍偷区亚洲网 | 少妇spa推油被扣高潮 | 性一交一无一伦一精一品 | 色一伦一情一区二区三区 | 亚洲三级黄色片 | 欧美 日韩 国产 另类 图片区 | 中文日韩亚洲欧美制服 | 午夜视频一区二区三区 | 97碰在线看片免费视频 | 国产爆乳无码视频在线观 | 国产三级无码内射在线看 | 无码a级毛片免费视频内谢5j | 亚洲中文字幕无码久久精品1 | 少妇久久久久久人妻无码 | 99久久精品午夜一区二区无码 | 色欲av蜜臀一区二区 | 无码中文亚洲av影音先锋 | 好硬啊进得太深了A片无码公司 | 一级a一级a爰片免费免免欧美 | 日韩欧美亚洲一区swa | 国产日韩无码影院一区二区三区 | 国产真实乱对白精彩 | 国产91精品一区二区麻豆亚洲 | 精品无码专区 | 精品麻豆一卡2卡三卡 | 性髙潮久久久久久久久久 | 亚洲熟女色情网中文字幕 | 国产日韩美欧乱伦一区 | 人妻丰满av无码中文字幕 | 亚洲性色午夜无码一区二区 | 偷妻之寂寞难奈正片完整版高清在线观看 | 在线观看免费高清在线播放 | 亚洲人午夜射精精品日韩 | 9I在线看片成人免费 | 曰韩毛片一区二区三区在线观看 |