1.8 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 587d7b8a367417b2b2512b4f | Prägnante Objektliteraldeklarationen mit der Kurzform für Objekteigenschaften schreiben | 1 | 301225 | write-concise-object-literal-declarations-using-object-property-shorthand |
--description--
ES6 bietet eine gute Unterstützung für die einfache Definition von Objektliteralen.
Schau dir den folgenden Code an:
const getMousePosition = (x, y) => ({
x: x,
y: y
});
getMousePosition ist eine einfache Funktion, die ein Objekt mit zwei Eigenschaften zurückgibt. ES6 bietet den syntaktischen Zucker, um die Redundanz zu beseitigen, die das Schreiben von x: x mit sich bringt. Du kannst einfach einmal x schreiben, und es wird unter der Haube in x: x (oder etwas Gleichwertiges) umgewandelt. Hier ist die gleiche Funktion von oben, die umgeschrieben wurde, um die neue Syntax zu verwenden:
const getMousePosition = (x, y) => ({ x, y });
--instructions--
Verwende die Kurzform für Objekteigenschaften mit Objektliteralen, um ein Objekt mit den Eigenschaften name, age und gender zu erstellen und zurückzugeben.
--hints--
createPerson("Zodiac Hasbro", 56, "male") sollte {name: "Zodiac Hasbro", age: 56, gender: "male"} zurückgeben.
assert.deepEqual(
{ name: 'Zodiac Hasbro', age: 56, gender: 'male' },
createPerson('Zodiac Hasbro', 56, 'male')
);
Dein Code sollte nicht key:value verwenden.
(getUserInput) => assert(!getUserInput('index').match(/:/g));
--seed--
--seed-contents--
const createPerson = (name, age, gender) => {
// Only change code below this line
return {
name: name,
age: age,
gender: gender
};
// Only change code above this line
};
--solutions--
const createPerson = (name, age, gender) => {
return {
name,
age,
gender
};
};