在很多場景下,我們發現乙個復合屬性中像物件、陣列,我們在使用時並不會每一次都用到其中的每一項、每乙個元素,所以es6的解構賦值就可以單獨將我們需要的屬性、元素取出,不用將物件、陣列全部載入,可以提高專案的執行效率。
先宣告乙個物件
let obj =
在這個物件中有兩個屬性,通過解構賦值,我們可以做到只載入我們需要的屬性,不需要載入整個obj
const =obj;console.log(name);
//"zhangsan"
這是物件解構賦值的一種形式,物件結構賦值時,不需要和屬性在物件內的位置一一對應,但屬性名必須與物件中的鍵名相同
const =obj;console.log(name);
//"zhangsan"
console.log(age); //
"18"
物件解構賦值中,我們可以起一些自定義的別名
const =obj;console.log(xingming);
//"zhangsan"
console.log(nianling); //
"18"
先宣告乙個陣列
let arr = ["hello", "world"];
陣列中解構賦值,是需要和元素的位置一一對應的
const [ hello, world ] = arr;console.log(hello);
//"hello"
console.log(world); //
"world"
元素對應的位置可以為空,但不可省略
const [ , world ] = arr;console.log(world);
//"world"
const [ world ] = arr;
console.log(world);
//"hello"
陣列解構中,解構名稱可以自定義
const [ a, b ] =arr;console.log(a);
//"hello"
console.log(b); //
"world"
結構賦值不僅僅可以用在陣列物件中,還有很多場景多會用到,例如建構函式
functionfunc()
const = new
func();
console.log(name);
//"zhangsan"
console.log(age); //
"18"
console.log(temp); //
"hello world"
還有像 import 這樣的獲取方法都可以使用
ES6新增特性 解構賦值
es6按照一定模式,從陣列和物件中提取值,對變數進行賦值,稱作解構賦值。按照下面的形式進行解構賦值。let a,b,c 1,2,3 console.log a 1 console.log b 2 console.log c 3若解構不成功,變數的值為undefined。let foo console...
前端 (四)ES6新特性之解構賦值
等號左右兩邊的格式一樣,就可以將右邊的值賦值給左邊的變數,這種寫法實質是 模式匹配 舉個例子 以前賦值 var a 1 var b 2 var c 3 解構賦值 var a,b,c 1,2,3 let undefined typeerror let null typeerror要求 等號右邊必須為陣...
ES6 解構賦值
陣列的解構賦值 let a,b 12,13 let a,b,c d 13,15,16 let a,b c 78,12 23 let x,y 1,3,5 x 1,y 3 let x,y,z a x a,y undefined z let h,b 1,2,3,4 1,2,3,4 預設值 let x tr...