Featured image of post 【JavaScript 变数】变数解构赋值,变数资料是如何定义与给予的

【JavaScript 变数】变数解构赋值,变数资料是如何定义与给予的

【JavaScript 变数】变数解构赋值,变数资料是如何定义与给予的

Photo by Mohammad Rahmani on Unsplash

取得阵列指定位置资料

let Employee = ['Kay', 'Jay'];
let [Kay, Jay] = Employee;

// [ 'Kay', 'Jay' ]
console.log(Employee);
// Kay
console.log(Kay);
// Jay
console.log(Jay);

取得阵列指定位置资料,忽略其中几个数值

没有要指定的资料,使用 逗号隔开但留空,不指定变数

let Employee = ['Kay', 'Jay'];
let [, Jay] = Employee;

// [ 'Kay', 'Jay' ]
console.log(Employee);
// Jay
console.log(Jay);

单行定义变数

不建议使用,当变数越多,导致程式可读性不高

let [Kay, Jay] = ['Kay', 'Jay'];
// Kay
console.log(Kay);
// Jay
console.log(Jay);

交换变数数值

let name = 'KJ';
let age = 17;

// My name is KJ, my age is 17
console.log(`My name is ${name}, my age is ${age}`);
// 交换变数数值
[name, age] = [age, name];
// My name is 17, my age is KJ
console.log(`My name is ${name}, my age is ${age}`);

取得物件中指定键值的变数值

const Employee = {
    name : 'KJ',
    age: 17
};
// 取得物件中指定键值的变数值
const {name, age} = Employee;
// { name: 'KJ', age: 17 }
console.log(Employee);
// KJ
console.log(name);
// 17
console.log(age);

物件属性赋值

若键值相同,直接将变数传入物件中,变数名称即为键值名称

const name = 'KJ';
const age = 17;
let Employee = {
    name,
    age
};
// { name: 'KJ', age: 17 }
console.log(Employee);

若键值有要异动,则就在前方加入键值名称即可

const name = 'KJ';
const age = 17;
let Employee = {
    newName : name,
    age
};
// { newName: 'KJ', age: 17 }
console.log(Employee);

取得指定数值,并重设其他属性到新变数

const Employee = {
    name : 'KJ',
    age: 17,
    height: 199
};
// 取得指定数值,并重设其他属性到新变数
const {age, ...OtherEmployee} = Employee;

// 17
console.log(age);
// { name: 'KJ', height: 199 }
console.log(OtherEmployee);
// { name: 'KJ', age: 17, height: 199 }
console.log(Employee);

用于传递物件参数

const SayHi = ({name, ...other}) => {
    // KJ
    console.log(name);
    // { age: 17, height: 199 }
    console.log(other);
};

SayHi({
    name : 'KJ',
    age: 17,
    height: 199
})

扩展物件数值

const Employee = {
    name : 'KJ',
    age: 17,
};

const NewEmployee = {
    ...Employee,
    height: 199
};

// { name: 'KJ', age: 17 }
console.log(Employee);
// { name: 'KJ', age: 17, height: 199 }
console.log(NewEmployee);

连续等于

会先从 后面 赋值,才往前赋值

NewEmployee = Employee = Person = {...}

Donate KJ 贊助作者喝咖啡

如果這篇文章對你有幫助的話,可以透過下面支付方式贊助作者喝咖啡,如果有什麼建議或想說的話可以贊助並留言給我
If this article has been helpful to you, you can support the author by treating them to a coffee through the payment options below. If you have any suggestions or comments, feel free to sponsor and leave a message for me!
方式 Method 贊助 Donate
PayPal https://paypal.me/kejyun
綠界 ECPay https://p.ecpay.com.tw/AC218F1
歐付寶 OPay https://payment.opay.tw/Broadcaster/Donate/BD2BD896029F2155041C8C8FAED3A6F8
All rights reserved,未經允許不得隨意轉載
Built with Hugo
主题 StackJimmy 设计