Thuộc tính tính toán trong JavaScript
Khi khai báo một đối tượng, tên các thuộc tính của nó có thể được lấy từ các biến. Các thuộc tính như vậy được gọi là computed properties (thuộc tính tính toán). Hãy xem cách thực hiện điều này. Giả sử chúng ta có đối tượng sau:
let obj = {
a: 1,
b: 2,
c: 3
};
Giả sử tên của một thuộc tính nào đó được lưu trữ trong một biến:
let key = 'a';
Hãy làm sao để thay vì tên thuộc tính cố định, giá trị từ biến của chúng ta được sử dụng. Để làm điều này, biến cần được đặt trong dấu ngoặc vuông:
let obj = {
[key]: 1,
b: 2,
c: 3
};
Khi khai báo các thuộc tính tính toán, có thể thực thi một số mã. Ví dụ:
let obj = {
[key + '1']: 1,
[key + '2']: 2,
[key + '3']: 3
};
Trong mã sau, khóa lẽ ra phải được lấy từ biến. Hãy sửa lỗi đã mắc phải:
let key = 'x';
let obj = {
key: 1,
y: 2,
z: 3
};
Cho đối tượng:
let obj = {
x: 1,
y: 2,
z: 3
};
Cho các biến:
let key1 = 'x';
let key2 = 'y';
let key3 = 'z';
Hãy làm sao để các khóa của đối tượng được lấy từ các biến này.