Các tên đặc tính tính toán
Đôi khi bạn cần tạo một object với một đặc tính cụ thể, nhưng tên của đặc tính đó là không ổn định thời gian dịch
cái bạn có thể gõ nghĩa đen trong mã nguồn của bạn. Thay vào, tên đặc tính bạn cần được lưu giữ trong một biến hay
là giá trị trả về của một hàm cái bạn khởi động. Bạn không thể sử dụng một object literal cơ bản cho loại đặc tính
này. Thay vào, bạn phải tạo một object và sau đó thêm các đặc tính mong muốn như một bước thêm:
const PROPERTY_NAME = “p1”;
function computePropertyName() { return “p” + 2; }
let o = {};
o[PROPERTY_NAME] = 1;
o[computePropertyName()] = 2;
Nó là đơn giản hơn nhiều để thiết lập một object như cái này với một đặc tính ES6 được biết đến như là các đặc tính
tính toán cái cho phép bạn lấy các dấu [ ] từ code trên và di chuyển chúng trực tiếp vào object literal:
const PROPERTY_NAME = “p1”;
function computePropertyName() { return “p” + 2; }
let p = {[PROPERTY_NAME]: 1,
[computePropertyName()]: 2};
p.p1 + p.p2 // => 3
