Ce face Error.isError
x instanceof Error dă rezultate greșite pentru erorile create în alt context (un iframe sau alt realm), care au propriul constructor Error, și poate fi păcălit de obiecte cu prototipul schimbat.
Error.isError verifică marcajul intern al erorilor, deci returnează true pentru orice eroare adevărată, inclusiv subclase precum TypeError sau clase proprii, și false pentru obiecte care doar arată ca o eroare.
Parametri
| Parametru | Descriere |
|---|---|
valoare |
Valoarea verificată. |
Ce returnează
true sau false.
Exemple
Exemplul 1: Erori adevărate și imitații
class EroareMea extends Error {}
const imitatie = Object.create(Error.prototype);
console.log(Error.isError(new TypeError("x")), Error.isError(new EroareMea()));
console.log(Error.isError({ name: "Error", message: "fals" }));
console.log(imitatie instanceof Error, Error.isError(imitatie));
Rezultat
true true
false
true false
Greșeli frecvente
- Verifici erorile primite de la un iframe sau un worker cu
instanceof Errorși primeștifalse. FoloseșteError.isError.
Comenzi înrudite
Error (throw new Error): Creează un obiect de eroare cu mesaj, tip și stivă de apeluri, pe care îl arunci cu throw.try / catch: Prinde erorile, ca programul să nu se oprească și să poți afișa un mesaj clar.Array.isArray: Verifică dacă o valoare este un tablou (array).