Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.
TypeError: invalid Array.prototype.sort argument
A exceção JavaScript "invalid Array.prototype.sort argument" ocorre quando o argumento deArray.prototype.sort() não éundefined ou uma função que compara os seus operandos.
In this article
Mensagem
TypeError: The comparison function must be either a function or undefined (V8-based)TypeError: invalid Array.prototype.sort argument (Firefox)TypeError: Array.prototype.sort requires the comparator argument to be a function or undefined (Safari)
Tipo de erro
TypeErrorO que ocorreu de errado?
Espera-se que o argumento deArray.prototype.sort() sejaundefined ou uma função que compare os seus operandos.
Exemplos
>Casos inválidos
js
[1, 3, 2].sort(5); // TypeErrorconst cmp = { asc: (x, y) => x >= y, dsc: (x, y) => x <= y };[1, 3, 2].sort(cmp[this.key] || "asc"); // TypeErrorCasos válidos
js
[1, 3, 2].sort(); // [1, 2, 3]const cmp = { asc: (x, y) => x >= y, dsc: (x, y) => x <= y };[1, 3, 2].sort(cmp[this.key || "asc"]); // [1, 2, 3]