ES6常用語法

2021-08-21 05:06:37 字數 2498 閱讀 1628

var

var name = "woniu"

console.log(name) //imooc

let 塊級作用域

console.log(name) //imooc   let是塊級作用域,只有在括號內部才可以獲取到,外部是獲取不到的

const 塊級作用域 

用處當我們很多人協作開發乙個專案的時候,希望乙個變數不會被修改,在效能上也有提公升

const lang = 'vue.js';

lang = 'react' //const的值不可修改,這樣寫會報錯

//正確寫法

let lang = 'vue.js';

lang = 'react'; //這裡用let就不會報錯

import(匯入)如何正確的使用花括號『{}』、export default 、export(匯出)假如有乙個b.js,想要通過import語法引用模組a.js,那麼可以這麼寫:

// b.js

import a from './a'

而上面的**生效的前提是,只有在如下a.js中有

預設匯出

export default語法時才會生效。也就是:

// a.js

export

default

42

在這種不使用{}來引用模組的情況下,import模組時的命名是隨意的,即如下三種引用命名都是正確的:

// b.js

import a from

'./a'

import mya from

'./a'

import something from

'./a'

因為它總是會解析到a.js中預設的export default

而下面是使用了花括號命名的方式來匯入a.js

import  from

'./a'

上面**生效的前提是,只有在模組a.js中有如下命名匯出aexport name的**,也就是:

export

const a = 42

而且,在明確宣告了命名匯出後,那麼在另乙個js中使用{}引用模組時,import時的模組命名是有意義的,如下:

// b.js

import from

'./a'

// 正確,因為a.js中有命名為a的export

import from

'./a'

// 錯誤!因為a.js中沒有命名為mya的export

import from

'./a'

// 錯誤!因為a.js中沒有命名為something的export

要想上述**正確執行,你需要明確宣告每乙個命名匯出:

// a.js

export

const a = 42

export

const mya = 43

export

const something = 44

ps: 乙個模組中只能有乙個預設匯出export default,但是卻可以有任意命名匯出(0個、1個、多個),你也可以如下,一次性將他們匯入:

// b.js

import a, from

'./a'

這裡我們使用匯入預設匯出a,以及命名匯出myasomething

我們甚至可以在匯入的時候重新命名匯入:

import x,  from

'./a'

總結:模組的預設匯出通常是用在你期望該從模組中獲取到任何想要的內容;而命名匯出則是用於一些有用的公共方法,但是這些方法並不總是必要的。

ES6常用語法

let宣告的變數不存在預解析 例如,使用var呼叫如下 不會出錯 alert inum var inum 10 預解析 預編譯 不報錯但是使用let會報錯 let不能預解析 下面的寫法會報錯 alert inum let inum 10 let宣告的變數不允許重複 同乙個作用域 下面方式不會報錯 如...

ES6常用語法

宣告變數let和const let宣告的變數不存在預解析 console.log flag var flag 123 let flag 456 let宣告的變數不允許重複 在同乙個作用域內 let flag 123 let flag 456 console.log flag es6引入了塊級作用域 ...

es6常用語法

es6常用語法 1.let const 塊級作用域,不能重複宣告,沒有提公升 const常量,引用型別 暫時性死區 2.字串拼接 兩個單引號 反的單引號 拼接字串 3.解構賦值 對稱賦值,更容易理解,乙個陣列 另外乙個陣列,乙個物件 另外乙個物件 4.展開運算子 複製陣列方便 var arr1 1,...