iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
1
Modern Web

和少女工程師一起學 JavaScript 系列 第 14

和少女工程師一起學 JavaScript:Day14 let、const

  • 分享至 

  • xImage
  •  

在 ES6 之後出現了 let 和 const ,用來取代原先使用的 var 來定義變數

var

  • 屬於 函式作用域(function scope) 且容易遭遇 Hoisting 的問題

let

  • 屬於 區塊作用域 (block scope)
  • 同範圍不允許重複宣告變數

const

  • 屬於 區塊作用域 (block scope)
  • 唯讀的變數

函式作用域與區塊作用域

function test(){
	var a = 'Hi';
}
conosle.log(a)  // a is not defined

if(true){
	var b = 'Hello'
}
conosle.log(b) //'Hello'
function test(){
	var a = 1;
	if(true){
		var a = 5;
		console.log(a);
	}
	console.log(a);
}

test();
//5
//5

let 和 const 的差別

function test(){
	let a = 1;
	a = 5;
	console.log(a);
}

test();

//5
function test(){
	const a = 1;
	a = 5;
	console.log(a);
}

test();

// Uncaught TypeError:Assignment to constant variable.

上一篇
和少女工程師一起學 JavaScript:Day13 this
下一篇
和少女工程師一起學 JavaScript:Day15 樣板字面值
系列文
和少女工程師一起學 JavaScript 27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言