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!