Tudo bem, Julia?
Eu também não vi erro, mas o código pode apresentar resultados indesejáveis a depender dos argumentos fornecidos.
Por exemplo,
console.log(maior(8,8,2)) // Maior é 2 ???? o_O
Isso ocorre porque os if ... else if
statements não consideram igualdade na hora de comparar os números.
Você pode ainda reduzir o número de comparações, considerando que se a condição (a > b && a > c)
for falsa, segue que b <= a
e logo não precisa comparar b
e a
na segunda condição.
Finalmente, uma opinião pessoal, eu acho que fica mais legível se retirar os else if
da vida. O return
statement interrompe o fluxo do bloco do if
. Então, assim que encontrar uma condição verdadeira, o código vai interromper.
function maior(a,b,c){
if (a >= b && a >= c) return 'Maior é ' + a;
if (b >=c) return 'Maior é ' + b;
return 'Maior é ' + c;
}
Happy coding!