1. 程式人生 > >es6中的let 和 var 的區別

es6中的let 和 var 的區別

var a = 1;  

var a =2 ;  

console.log(a);//2  

 
let b = 1;  

let b = 2;  

console.log(b);//(報錯鳥)caught SyntaxError: Identifier 'a' has already been declared</span>  

說完了let 和 var 的區別,接下來說說 const ;

const 是一個常量,只能宣告一次,而且不能重複宣告,而且不能更改;


const a = 1;  

const a = 2;  

console.log(a);//報錯

但是如果定義的常量是一個物件,我們去修改這個常量裡的值 不會報錯;

const a ={  

     b:10  

}  

a.b=11;  

console.log(a.b)//11  


如果有什麼地方說的不得體,歡迎大家指出; 再見

相關推薦

ES6letvar區別

文件 周期 cti 語句 function 作用範圍 spa 作用 方式 js函數中聲明變量有多種方式。 var xx; function test(){ var aa; //聲明一 let bb;//聲明二 this

ES6筆記-letvar區別

let基本用法 ES6新增了let命令,用來宣告變數,用法類似於var,但它所宣告的變數,只在let命令所在的程式碼塊內有效。 { let a = 10; var b = 20; } console.log(a) // Error console.log(b) /

ES6letvar區別

通過var定義的變數,作用域是整個封閉函式,是全域的 。通過let定義的變數,作用域是在塊級或是子塊中。 for (let i = 0; i < 10; i++) { // ... } console.log(i); // ReferenceError: i is not d

詳細分析ES6letvar變數提升的區別

今天在知乎看到一篇講解let跟var的文章,我認為關於let不會變數提升問題存疑,於是乎想自己寫一篇文章結合理論實踐給各位更清晰的區別開let跟var的變數提升問題。(觀點基於我的實踐,如有錯還請大佬們指點,純屬探討)   let跟var 大部分人的第一反應肯定作用域問題,va

tsjsletvar定義變數的區別

javascript 嚴格模式 第一次接觸let關鍵字,有一個要非常非常要注意的概念就是”JavaScript 嚴格模式”,比如下述的程式碼執行就會報錯: let hello = 'hello

jsletvar定義變數的區別

javascript 嚴格模式 第一次接觸let關鍵字,有一個要非常非常要注意的概念就是”javascript 嚴格模式”,比如下述的程式碼執行就會報錯: let hello = 'hello world.'; console.log(hello);

typescript letvar區別

同名 spa 技術 聲明 nbsp http img family pan 1,var可以聲明同名變量,但let不可以; var a = 0; var a = 1; // 不會報錯 let b= 0; let b = 1; // 會報錯 var的作用域是函數作用域,在

ES6let閉包

引入 array lean table conf 屬性 gin 一個 立即執行函數   在開始本文之前我們先來看一段代碼 for(var i=0;i<10;i++){ arr[i]=function(){ return i; } }

ES6let const 的新特性

在javascript中,我們都知道使用var來宣告變數。javascript是函式級作用域,函式內可以訪問函式外的變數,函式外不能訪問函式內的變數。 ECMAScript 6 是 JavaScript 語言教程,全面介紹 ECMAScript 6 新引入的語法特性。 ES6 與上一

深入解析ES6let閉包

本篇文章主要介紹了深入理解ES6中let和閉包,寫的十分的全面細緻,具有一定的參考價值,對此有需要的朋友可以參考學習下。如有不足之處,歡迎批評指正。 本文介紹了深入理解ES6中let和閉包,分享給大家,具體如下: 在開始本文之前我們先來看一段程式碼 for(var i=0;

es6let var區別

var a = 1;   var a =2 ;   console.log(a);//2     let b = 1;   let b = 2;   console.log(b);//(報錯鳥)caught SyntaxError: Identifier 'a' has already been declar

ES6letvar區別

ES6中新增了let命令用來宣告變數,let和var 宣告的變數有什麼區別呢?現在來講解總結下。1、基本用法:和var 命令類似,直接使用 let 變數 = 值。{ let a = '1'; var b = 'a'; } a // error: a is no

js變數var定義var定義的區別,es6let命令const命令

之前我們在寫js程式碼的時候都知道可以用var定義全域性變數和區域性變數,也可以省略var,而且在非嚴格模式下不會報錯,但是並不知道兩者的區別... var x = 1; y = 4; console.log(x);//1 console.log(y);//4 cons

前端面試題(二):ES6let,const var 三者的區別

let命令基本用法 在ES6中,新增了let命令,用於宣告變數,用來取代ES5中var命令,消除var宣告的變數的不合理,不嚴謹之處。const用於宣告常量。 讓我們來看看let和var的區別 1.let不存在變數提升 使用let宣告的變數,不會像

前端面試題:JSletvar區別

blog ocs undefine define 規範 target {} 擁有 comment 最近很多前端的朋友去面試被問到let和var的區別,其實阮一峰老師的ES6中已經很詳細介紹了let的用法和var的區別。我簡單總結一下,以便各位以後面試中使用。 ES6 新增

Es6 let var const 瞭解

1. let 宣告的變數只在它所在的 程式碼塊 有效,超出範圍去引用會報錯。 2. var 命令宣告的變數,在全域性範圍內都有效。 1 var a = []; 2 for (var i = 0; i < 10; i++) { 3 a[i] = fun

letvar區別

for 通過 let 使用 一次 全局 code 變量 不可用 通過var定義的變量,作用域是整個封閉函數,是全域的 。通過let定義的變量,作用域是在塊級或是子塊中。 但是直接用let聲明變量不賦值是會打印undefined,還是初始化了,只是let聲明放在賦值之後,l

js---ES6 letvar

1.let和var let:有塊級作用域,必須先宣告再使用變數(不存在宣告提前),不允許重複宣告。 let arr=[]; for (var a = 0; a < 10; a++) { arr[a]=function(){

jsletvar、const的區別

1.const定義的變數不可以修改,而且必須初始化。 1 const b = 2;//正確 2 // const b;//錯誤,必須初始化 3 console.log('函式外const定義b:' + b);//有輸出值 4 // b = 5; 5 // console.log('函式外修

jsletvar、const定義變數的區別

首先需要明確的是let、const、var都是用來定義變數的 在ES6之前,我們一般都用var來定義變數,例如 : 在上面的程式碼中,我們可以預計到第一個console輸出的是1,第二個由於變數提升輸出的是undefine,而不是產生ReferenceError錯誤,第三個