ES6學習筆記之《let 和 const》

2021-07-27 05:11:45 字數 1124 閱讀 7684

es6宣告變數的方法:var、function、let、const、import、class;

let和 const

const的作用域與let命令相同:只在宣告所在的塊級作用域內有效。

if (true) 

max // uncaught referenceerror: max is not defined

const命令宣告的常量也是不提公升,同樣存在暫時性死區,只能在宣告的位置後面使用。

if (true)
const宣告的常量,也與let一樣不可重複宣告。

var message = "hello!";

let age = 25;

// 以下兩行都會報錯

const message = "goodbye!";

const age = 30;

全域性變數獲取:

墊片庫system.global

模擬了這個提案,可以在所有環境拿到global:

// commonjs的寫法

require('system.global/shim')();

// es6模組的寫法

import shim from 'system.global/shim'; shim();

上面**可以保證各種環境裡面,global物件都是存在的。

// commonjs的寫法

var global = require('system.global')();

// es6模組的寫法

import getglobal from 'system.global';

const global = getglobal();

上面**將頂層物件放入變數global

es6學習筆記 let和const

console.log b uncaught referenceerror a is not defined 在for迴圈中,迴圈語句部分是乙個作用域,內部又是乙個作用域 for let a 1 a 3 a 在let宣告變數完成前,對變數賦值會出錯es中模仿塊級作用域 function functi...

ES6學習筆記 let和const

今天開始讀阮一峰的 ecmascript 6 入門 在這裡記錄下閱讀過程中的要點,以便隨時查閱。頂層物件的屬性與全域性變數掛鉤,被認為是js最大的敗筆之一,es6開始,全域性變數將逐步與頂層物件脫鉤。為了保持相容性,一方面,var和function宣告的全域性變數,依舊是頂層物件的屬性 另一方面,l...

ES6 學習筆記 let和const

學習資料 ecmascript 6 入門 如果使用var,只有乙個全域性變數i var a for var i 0 i 10 i a 6 10var a for let i 0 i 10 i a 6 6設定迴圈變數的那部分是乙個父作用域,而迴圈體內部是乙個單獨的子作用域 for let i 0 i ...