a // 報錯 referenceerror: a is not defined
let 是在**塊內有效,var 是在全域性範圍內有效
a // referenceerror: a is not defined
b // 1
let a = 1;
let a = 2;
var b = 3;
var b = 4;
a // identifier 'a' has already been declared
b // 4
console.log(a); //referenceerror: a is not defined
console.log(b); //undefined
var b = "banana";
變數 b 用 var 宣告存在變數提公升,所以當指令碼開始執行的時候,b 已經存在了,但是還沒有賦值,所以會輸出 undefined。
變數 a 用 let 宣告不存在變數提公升,在宣告變數 a 之前,a 不存在,所以會報錯。
const pi = "3.1415926";
pi // 3.1415926
const my_age; // syntaxerror: missing initializer in const declaration
const宣告乙個物件時,是物件的引用不可以再更改,而物件內部屬性及屬性的值可以改變。 es6的常量的宣告
在 es6 中里也可以使用 const 語法進行宣告。使用 const 宣告的變數會被認為是常量 constant 意味著它們的值在被設定完成後就不能再被改變。正因為如此,所有的 const 變數都需要在宣告時進行初始化,示例如下 有效的常量 const maxitems 30 語法錯誤 未進行初始...
Es6之變數宣告
es6變數宣告let 和 canst,let 所宣告的變數具有塊級作用域,且宣告的變數不會前置,而const宣告的是不變了常量 let test test let 所宣告的變數只在塊級作用域內有效,而var就不同 for var i 1 i 5 i console.log str 輸出hello.c...
ES6 變數宣告方式
var,function,let,const,import,class1.let只在所在的 塊中有效 2.以前我們需要用iife解決的問題 3.不存在變數宣告提公升 4.暫時性死區tdz 1.let只在所在的 塊中有效 2.以前我們需要用iife解決的問題 3.不存在變數宣告提公升 console....