Ini adalah Singkatan Properti Penginisialisasi Objek di ES6.
var f = {a, b, c, d:1};
Ini berfungsi karena nilai properti memiliki nama yang sama dengan pengenal properti. Ini adalah tambahan baru pada sintaks Penginisialisasi Objek ( bagian 11.1.5 ) di draf ECMAScript 6 terbaru Rev 13 . Dan tentu saja, seperti batasan yang ditetapkan dari ECMAScript 3, Anda tidak dapat menggunakan kata yang dipesan sebagai nama properti Anda.
Singkatan seperti itu tidak akan mengubah kode Anda secara dramatis, itu hanya membuat semuanya sedikit lebih manis!
function createCar(name, brand, speed) {
return { type: 'Car', name: name, brand: brand, speed: speed };
}
function createSweetCar(name, brand, speed) {
return { type: 'Car', name, brand, speed };
}
Silakan lihat tabel kompatibilitas untuk dukungan untuk notasi ini. Di lingkungan non-pendukung, notasi ini akan menyebabkan kesalahan sintaks.
Notasi singkat ini menawarkan pencocokan objek dengan cukup baik:
Di ECMAScript5 apa yang biasa kami lakukan:
var tmp = getData();
var op = tmp.op;
var lhs = tmp.lhs;
var rhs = tmp.rhs;
Dapat dilakukan di ECMAScript6 dengan satu baris kode:
var { op, lhs, rhs } = getData();