ES6 Object Literal Property Value Zkratka v JavaScriptu

V JavaScriptu jsme zvyklí konstruovat objekt pomocí doslovné syntaxe {...} , kde je každý pár klíč–hodnota definován explicitně. Často používáme stejné názvy klíčů objektů jako existující proměnné, které používáme jako hodnoty.

Podívejme se na následující příklad:

var name = 'John Doe';
var email = '[email protected]';
var age = 25;

var user = {
    name: name,
    email: email,
    age: age
};

Jak můžete vidět výše, vlastnosti mají stejné názvy jako proměnné. Zkratka hodnoty doslovné vlastnosti objektu byl představen v ES6, aby byla inicializace objektu kratší.

Umožňuje nám definovat objekt, jehož klíče mají stejné názvy jako proměnné předané jako vlastnosti, pouhým předáním proměnných:

let name = 'John Doe';
let email = '[email protected]';
let age = 25;

let user = { name, email, age };

console.log(user);

// { 
//     name: 'John Doe', 
//     email: '[email protected]', 
//     age: 25 
// }

Zkrácená syntaxe hodnoty vlastnosti automaticky převede každou proměnnou na pár klíč–hodnota s názvem proměnné jako klíčem vlastnosti a hodnotou proměnné jako hodnotou vlastnosti.

Ve stejném objektu můžete také kombinovat běžné vlastnosti a zkratky. To je zvláště užitečné, když chcete vlastnosti přiřadit jiný název klíče, než je název proměnné:

let user = { name, userEmail: email, age };

// { 
//     name: 'John Doe', 
//     userEmail: '[email protected]', 
//     age: 25 
// }