国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

5分鐘快速掌握JS中var、let和const的異同

2024-05-06 15:29:45
字體:
來源:轉載
供稿:網友

前言

首先,一個常見的問題是,ECMAScript 和 JavaScript 到底是什么關系?

ECMAScript是一個國際通過的標準化腳本語言。JavaScript由ECMAScript和DOM、BOM三者組成。可以簡單理解為:ECMAScript是JavaScript的語言規范,JavaScript是ECMAScript的實現和擴展。

2011 年,ECMAScript 5.1 版發布。之前我們大部分人用的也就是ES5

2015 年 6 月,ECMAScript 6 正式通過,成為國際標準。

好了,回歸我們的正題。

本文說的這個話題對于一些老鳥來說可能根本算不上疑問,但對于新手來說也許除了最常見的var之外,let和const較少使用的機會。

所以在本文中,我將會通過一些例子來為大家介紹如何在Javascript中靈活使用var、let和const這些關鍵字來定義變量,以及這些關鍵字它們之間有什么異同。

如果你懶得看下面的代碼,那我可以先把概念結論說出:

var定義的變量可被更改,如果不初始化而直接使用也不會報錯 let定義的變量和var類似,但作用域在當前聲明的范圍內 const定義的變量只可初始化一次且作用域內不可被更改,使用前必須初始化

下面我將通過示例的形式來詳細為大家介紹它們三者之間的異同:

Var

var用以聲明一個變量,并且同時我們可以在聲明語句中初始化所聲明的變量。

例如:

var a = 10;
變量的聲明,會在代碼被執行之前被處理。 用var聲明的JavaScript變量,其可用范圍在當前執行上下文。 在函數外聲明的JavaScript變量,其作用范圍是全局。

考慮以下代碼片段:

function nodeSimplified() { var a =10; console.log(a); // 輸出 10 if(true) { var a=20; console.log(a); // 輸出 20 } console.log(a); // 輸出 20}

在上面的代碼中,你可以發現,當變量a在if代碼段里被更新時,它的值被全局更新了,因此在經過了if代碼后,被更新的值仍然被保留著。這與其他語言中的全局變量有點類似。但是,在使用這個功能時要非常小心,因為它有可能會覆蓋一個已有的值。

let

let語句在一個塊級范圍里聲明一個局部變量。和var類似,我們可以在聲明時初始化它的值。

例如:

let a = 10;
這個語句允許你創建一個變量,使它的作用范圍被限制在它所在的代碼塊。 它和Java、C#等其他語言的變量類似。

考慮下面的代碼片段:

function nodeSimplified() { let a =10; console.log(a); // output 10 if(true) { let a=20; console.log(a); // output 20 } console.log(a); // output 10}

它和大多數語言中我們所見的表現行為是一致的。

function nodeSimplified() { let a =10; let a =20; // 拋出語法錯誤 console.log(a); }            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 梓潼县| 宿迁市| 沾化县| 乌什县| 定州市| 涿州市| 尚志市| 安图县| 湘潭市| 中西区| 桦川县| 镇平县| 隆林| 延边| 双桥区| 聊城市| 桐梓县| 峨眉山市| 洞头县| 鄯善县| 高台县| 息烽县| 静海县| 临澧县| 固原市| 元朗区| 铁岭市| 都江堰市| 阿拉善左旗| 融水| 岑巩县| 宜君县| 楚雄市| 彰武县| 宁河县| 上栗县| 定远县| 安康市| 阳城县| 桑植县| 兴山县|