2016-06-02 19 views
1

I umgesetzt:JS Wie konvertiert man das Error-Objekt aus window.error in eine Zeichenkette?

window.onerror = function (m, s, l, c, e) { 
} 

Wo die E das Error-Objekt ist. Zum Beispiel ist es enthält:

ReferenceError: rde is not defined 
    at Object.bla.cs (domain.pt/bla.js:418:17) 
    at n.aanv (domain.pt/bla.js:125:29) 

Wenn ich e.toString() machen, nur die erste Zeile zurückgegeben wird. Wie bekommt man die 3 Zeilen? Vielen Dank.

+0

Ich habe auch versucht dies:... E.toString() ersetzen (/ (\ r \ n | \ n | \ r)/gm, "") ohne Erfolg – user1774309

+0

'foreach (p in e) {console.log (e [p]);}' oder 'JSON.stringify (e);' könnte Hilfe? Überprüfen Sie [diese Antwort] (http://stackoverflow.com/questions/5612787/converting-an-object-to-a-string#answer-5612876). – skobaljic

+0

Es hilft nicht. JSON.stringify (e) gibt zurück nicht definiert. – user1774309

Antwort

1

Es scheint, dass das Fehlerobjekt eine Eigenschaft namens Stack hat. Also, e.stack ist der vollständige Text des Fehlers.

1

Error-Objekt haben eine .message Eigenschaft, um die vollständige Meldung enthält (keine Notwendigkeit für .toString() Es gibt auch .stack aber es ist nicht eine standardisierte Eigenschaft