freeCodeCamp/curriculum/challenges/chinese/02-javascript-algorithms-an.../es6/write-concise-object-litera...

1.8 KiB

id challengeType forumTopicId title
587d7b8a367417b2b2512b4f 1 301225 使用简单字段编写简洁的对象字面量声明

Description

ES6 添加了一些很棒的功能,以便于更方便地定义对象。 请看以下代码:
const getMousePosition = (x, y) => ({
  x: x,
  y: y
});

getMousePosition是一个返回了拥有2个属性的对象的简单函数。 ES6 提供了一个语法糖,消除了类似x: x这种冗余的写法.你可以仅仅只写一次x,解释器会自动将其转换成x: x。 下面是使用这种语法重写的同样的函数:

const getMousePosition = (x, y) => ({ x, y });

Instructions

请使用简单属性对象的语法来创建并返回一个Person对象。

Tests

tests:
  - text: '输出是<code>{name: "Zodiac Hasbro", age: 56, gender: "male"}</code>。'
    testString: assert.deepEqual({name:"Zodiac Hasbro",age:56,gender:"male"}, createPerson("Zodiac Hasbro", 56, "male"));
  - text: '不要使用<code>key:value</code>。'
    testString: getUserInput => assert(!getUserInput('index').match(/:/g));

Challenge Seed

const createPerson = (name, age, gender) => {
  "use strict";
  // change code below this line
  return {
    name: name,
    age: age,
    gender: gender
  };
  // change code above this line
};
console.log(createPerson("Zodiac Hasbro", 56, "male")); // returns a proper object

Solution

const createPerson = (name, age, gender) => {
  "use strict";
  return {
    name,
    age,
    gender
  };
};