3
respostas

Palavra "function" para indicar uma função

Olá. Notei que ao inserir a palavra function antes de definir o comportamento da função na classe ContaCorrente não funciona.

class ContaCorrente {
    agencia;
    saldo;
   function sacar(valor) {
        if (this.saldo >= valor) this.saldo -= valor;
    }
}

const contaCorrenteRicardo = new ContaCorrente();
contaCorrenteRicardo.saldo = 100;
contaCorrenteRicardo.sacar(80);
console.log(contaCorrenteRicardo.saldo);

Poderiam me explicar por quê isso acontece? Gratidão :)

3 respostas

Bom dia!

Classes em JavaScript são introduzidas no ECMAScript 2015 e são simplificações da linguagem para as heranças baseadas nos protótipos. A sintaxe para classes não introduz um novo modelo de herança de orientação a objetos em JavaScript. Classes em JavaScript provêm uma maneira mais simples e clara de criar objetos e lidar com herança.

Pelo padrão ECMA, a palavra reservada "function"não é utilizada na construção de classes:

https://www.ecma-international.org/ecma-262/6.0/#sec-class-definitions

Bons estudos.

Perfeito! Obrigado :)

Boa tarde!

Quando puder, marque a minha resposta como solução para que seja encerrado o tópico.

Bons estudos!