ES6新增特性自整理彙總

2021-10-02 03:11:02 字數 1243 閱讀 9210

教你從入門到放棄

let:

跟es5相比,es6增加了let,其用法類似var,但存在著較大區別:

相同點:用來宣告變數,儲存變數

不同點

①作用域不同,var是函式作用域,let是塊作用域;

②暫時性死區:let宣告的後的變數會繫結它所在的作用域,該作用域不允許重複宣告,不存在宣告提公升。

let a = 10;

let a = 20; //報錯

const:

宣告常量,

注意:必須賦值,且賦值後值不可以修改,只有陣列和物件可以通過一定方法修改常量值

陣列可以通過下標修改陣列中的內容

const arr = [0,1,2];

arr[0] = "皇甫鐵牛";

console.log(arr);//[皇甫鐵牛,1,2]

物件可以通過鍵改變值

const obj = 

obj.name = '皇甫鐵牛';

console.log(obj);//

es6允許按照一定模式,從陣列和物件中提取值,對變數進行賦值,成為解構(destructuring)。

賦值運算子右側是要解構的陣列或物件,左側是對應的模式和宣告變數,表現形式為、{}

var arr = [1,2,3];

var obj = ;

let [a] = arr;

let = obj;

console.log(a,b);//1,李翠花

let [a,b,c] = [1,2,3];  ==> let a = 1;

let b = 2;

let c = 3;

let [ , , c] = [1,2,3];//c:3

解構賦值預設值

物件解構賦值

字串解構賦值

函式形參的解構賦值

其他知識點見部落格解構賦值篇

(數值、陣列、字串、物件、函式)

es6存在相容問題,主要針對ie9,使用轉碼器(babel),可以把es6轉換為es5,所以es6是es5的語法糖;

**語法糖:**好用且效果不打折扣,在原有的功能不變的基礎上讓用法更加簡潔方便

ES6新增特性

let 1.let宣告的變數不會掛在window中,不會像var宣告的變數一樣造成全域性變數的汙染 2.新增了乙個塊級作用域 以前只有函式作用域,全域性作用域 3.let是不允許重複宣告 4.let不會有宣告提前 var num 15 全域性變數 console.log num 15 console...

ES6新增特性

1 變數定義 const let 2 解構 3 箭頭函式 核心 this的指向 4 模板字面量 5 spread rest 物件展開 6 子符串 陣列新增方法 console.log str.includes de true,字串是否包含de console.log str.endswith ef ...

ES6新特性彙總

const常量 num 10 常量不可修改,如果是物件的話,可以修改值 eg1 obj 可以直接將data從obj中解構出來 let obj eg2 let a 0 let b 1 如何交換二者的值?a,b b,a b 不錯 a 今天天氣 將變數直接 差值表示式的方式,插入字串中 let arr 1...