freeCodeCamp/curriculum/challenges/portuguese/02-javascript-algorithms-an.../es6/write-concise-declarative-f...

2.1 KiB

id title challengeType videoUrl localeTitle
587d7b8b367417b2b2512b50 Write Concise Declarative Functions with ES6 1 Escrever funções declarativas concisas com o ES6

Description

Ao definir funções dentro de objetos no ES5, precisamos usar a function palavra-chave da seguinte forma:
const pessoa = {
nome: "Taylor",
sayHello: function () {
return "Olá! Meu nome é $ {this.name} .`;
}
};
Com ES6, você pode remover a palavra-chave da function e dois pontos ao definir funções em objetos. Aqui está um exemplo dessa sintaxe:
const pessoa = {
nome: "Taylor",
diga olá() {
return "Olá! Meu nome é $ {this.name} .`;
}
};

Instructions

Refatorar a função setGear dentro da bicycle do objeto para usar a sintaxe abreviada descrita acima.

Tests

tests:
  - text: Expressão de função tradicional não foi usada.
    testString: 'assert(!getUserInput("index").match(/function/),"Traditional <code>function</code> expression was not used.");'
  - text: <code>setGear</code> é uma função declarativa.
    testString: 'assert(typeof bicycle.setGear === "function" && getUserInput("index").match(/setGear\s*\(.+\)\s*\{/), "<code>setGear</code> is a declarative function.");'
  - text: <code>bicycle.setGear(48)</code> altera o valor da <code>gear</code> para 48.
    testString: 'assert((new bicycle.setGear(48)).gear === 48, "<code>bicycle.setGear(48)</code> changes the <code>gear</code> value to 48.");'

Challenge Seed

// change code below this line
const bicycle = {
  gear: 2,
  setGear: function(newGear) {
    "use strict";
    this.gear = newGear;
  }
};
// change code above this line
bicycle.setGear(3);
console.log(bicycle.gear);

Solution

// solution required