Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

100
Visualizações
Ejercicio de cierres de Javascript

Conseguí este ejercicio de la escuela:

Implemente la función de cálculo que devuelve un objeto que brinda la capacidad de realizar las cuatro operaciones matemáticas (suma, resta, multiplicación y división) en el mismo número y finalmente imprime el resultado.

SUGERENCIA: para concatenar los métodos, simplemente devuelva la referencia al objeto mismo ($this)

Ejemplo:

calculadora .sumar(2) // 2 .sumar(4) // 6 .multiplicar(3) // 18 .sub(1) // 17 .sub(3) // 14 .divide(2) // 7 . imprimirResultado();

Lo que hice:

 function calculate() { let result = 0; let calculator = { add: function(number) { return result += number; }, multiply: function(number) { return result *= number; }, sub: function(number) { return result -= number; }, divide: function(number) { return result /= number; }, printResult: function() { return result; } } return calculator; } const calculator = calculate(); calculator.add(2).add(4).multiply(3).sub(1).sub(3).divide(2).printResult(); // The result will be: 7

Por favor ayúdenme se que esta mal pero no entendí los cierres con objetos. También dame explicaciones.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Los métodos de la calculadora add , multiply , etc. deberían devolver el objeto de la calculadora (que es this ), no el resultado. Entonces, con una pequeña modificación, funcionará.

 function calculate() { let result = 0; let calculator = { add: function(number) { result += number; return this; }, multiply: function(number) { result *= number; return this; }, sub: function(number) { result -= number; return this; }, divide: function(number) { result /= number; return this; }, printResult: function() { return result; } } return calculator; } const calculator = calculate(); let result = calculator.add(2).add(4).multiply(3).sub(1).sub(3).divide(2).printResult(); // The result will be: 7 console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda