物件解構賦值 ※很重要
/**
* 物件解構賦值:獲取元素中屬性的值,然後賦值給變數
*///宣告乙個物件
let obj =
;//es5中
// let name1 = obj.name;
// let age1 = obj.age;
// let gender1 = obj.gender;
// let score1 = obj.score;
// console.log(name1,age1,gender1,score1);
//es6中 物件解構賦值
// let = obj;//就是直接用 來給變數名賦值直接的
// console.log(name1,age1,gender1,score1);
// let = obj;//名字一樣也可以
// console.log(name,age,gender,score);
// let = obj;//如果宣告的變數名跟物件的屬性名一樣 可以直接寫乙個 就可以直接簡寫 比較方便
// console.log(name,age,gender,score);
// let = obj;
// console.log(name,age,gender,fenshu);//如果簡寫的變數名跟物件屬性名對不上(物件中沒有與變數名同名的屬性名) 就是沒有 這個變數名的值就會是undefined
// let = obj;
// console.log(name,age,gender,fenshu);//這就是變數名跟物件屬性名一樣的簡寫 不一樣的就老老實實的按照 屬性名:變數名 這樣寫
// let = obj;//可以用 變數名=值 來指定預設值
// console.log(name,age,gender,fenshu,height);
let= obj;
//可以用 變數名=值 來指定預設值 但對於有與變數名同名的物件屬性名 還有預設值的來說 會取用物件的屬性值
//這就體現了 變數名=值 是預設值 只有在其他情況都沒有賦值的情況才會使用
console.
log(name,age,gender,fenshu,height)
;
陣列解構賦值/**
* 陣列解構賦值:就是把陣列的每乙個元素依次賦值給變數
* 陣列解構賦值 只能按順序賦值 不可以更改順序賦值
*///宣告陣列
let arr =[10
,20,30
,40];
//es5中
let num1 = arr[0]
;let num2 = arr[1]
;let num3 = arr[2]
;let num4 = arr[3]
;console.
log(num1,num2,num3,num4)
;//es6中 可以用陣列解構賦值 用
// let [num1,num2,num3,num4] = arr;//意思按正常順序 依次按照索引值將陣列中的元素賦值給對應的變數名
// console.log(num1,num2,num3,num4);
// let [num1,num2,num3,num4,num5] = arr;//變數數量多於陣列元素數量的話 多出來的就是沒有 undefined
// console.log(num1,num2,num3,num4,num5);
// let [num1 = 100,num2,num3,num4,num5 = 50] = arr;// 變數名 = 值 為預設值 跟那個物件解構賦值類似
// console.log(num1,num2,num3,num4,num5);
解構賦值結合函式宣告/**
* 解構賦值結合函式宣告
*///es5中
//宣告乙個函式,形參有多個
// function test(name,age,gender)
// test('chen',35,'man');
//形參有多個 可以吧形參打包成乙個物件
// function test(obj)
// test();
//es6中
//宣告乙個函式,形參有多個
//形參我就直接可以用物件解構賦值
// function test1());
// };
// test1();
//上面跟下面這行**乙個意思 形參 = 實參
// let =
functionx(
[a,b,c,d])x
([10,
20,30]
);//結果是nan 因為d沒有值 是undefined 數字加undefined是nan
es6的新語法,解構賦值簡單應用
參考該鏈結 var c 等價於 var c var c a c.a b c.b console.log a 結果some code 取出 c 裡面的a的值,必須是a要為c裡面有a這個物件才行。a 的位置不固定也可以這樣 var c console.log a 結果some code一 陣列解構 為什...
ES6語法 解構賦值
按照一定的模式,從陣列和物件中提取值,對變數進行賦值,就被稱為解構。目的是為了提高效率,使用起來更加方便。以下的各個說明,我會模擬著es5去解釋,希望能幫到小夥伴們。陣列解構 正常解構 es5 var arr 1,2,3 var a arr 2 console.log a 3 es6 let a,b...
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...