Entiendo que estas dos llamadas deberían devolver el mismo valor . Creo que la asignación que hice está mal pero no veo cómo hacerlo bien.
info2 () devuelve el valor correcto mientras que info () no lo hace.
Client.prototype.info2 = function () { return (this.AccountType()) } Client.prototype.info = function () { const {AccountType} = this return (AccountType()) }------- Todo el código -------
function Client(name, balance) { this.name = name; this.balance = balance; } Client.prototype.AccountType = function () { const {balance} = this let type; if (balance >= 10000) { type = 'Platinum' } else if (balance >= 5000) { type = 'Gold' } else { type = 'Standard' } return type; } //Expected result: 'Gold' // Result: 'Gold' Client.prototype.info = function () { const {AccountType} = this return (AccountType()) } //Expected result: 'Gold' // Result: 'Standard' Client.prototype.info2 = function () { return (this.AccountType()) } //Expected result: 'Gold' // Result: 'Gold' //instances const Pedro = new Client('Pedro', 8000)