ES6'daki bir Nesne Başlatıcı Özellik Kestirimidir.
var f = {a, b, c, d:1};
Bu işe yarar çünkü özellik değeri, özellik tanımlayıcısıyla aynı ada sahiptir. Bu , en son ECMAScript 6 taslak Rev 13'teki Object Initialiser sözdizimine ( bölüm 11.1.5 ) yeni bir ek . Ve elbette, tıpkı ECMAScript 3'ten belirlenen sınırlamalar gibi, mülk adınız olarak ayrılmış bir kelime kullanamazsınız.
Böyle bir kısaltma, kodunuzu önemli ölçüde değiştirmez, yalnızca her şeyi biraz daha tatlı hale getirir!
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 };
}
Bu gösterimler için destek için lütfen uyumluluk tablosuna bakın. Desteklenmeyen ortamlarda, bu gösterimler sözdizimi hatalarına yol açacaktır.
Bu kısa gösterim, nesne eşleştirmesini oldukça güzel bir şekilde sunar:
In ECMAScript5'i biz ne yapardık:
var tmp = getData();
var op = tmp.op;
var lhs = tmp.lhs;
var rhs = tmp.rhs;
ECMAScript6'da tek bir kod satırı ile yapılabilir :
var { op, lhs, rhs } = getData();