Dapatkan jejak seperti console.error () dengan menghasilkan pesan kesalahan [duplikat]
Dec 13 2020
Ketika saya melakukannya, console.error('Custom Error')
saya mendapatkan jejak bagus dari mana asalnya
Sebagai contoh:
func1();
function func1() {
func2();
}
function func2() {
func3();
}
function func3() {
console.error('Custom Error');
}
Saya mendapat:

Bagaimana saya bisa melakukan ini tanpa menghasilkan kesalahan, lebih tepatnya console.log()
?
Jawaban
Danziger Dec 13 2020 at 06:44
Anda bisa menggunakan console.trace()bukan console.error().
Inilah yang Anda lihat di konsol dengan console.trace()
:
Trace
func3 @ js:24
func2 @ js:19
func1 @ js:15
(anonymous) @ js:12
Dan ini dengan console.error()
:
Custom Error
console.error @ snippet-javascript-console.min.js?v=1:1
func3 @ js:23
func2 @ js:19
func1 @ js:15
(anonymous) @ js:12
Jika Anda ingin membuat pelacakan tumpukan menjadi variabel, bukan hanya mencatatnya, Anda dapat menggunakan Error.captureStackTrace(targetObject)atau Error().stack, tetapi keduanya tidak standar:
func1();
function func1() {
func2();
}
function func2() {
func3();
}
function func3() {
const fakeErrorObject = {};
Error.captureStackTrace(fakeErrorObject)
const captureStackTraceTrace = fakeErrorObject.stack;
const errorStackTrace = Error('Foo').stack;
console.log(captureStackTraceTrace.replaceAll('at', '👉'));
console.log(errorStackTrace.replaceAll('at', '👉'));
}
.as-console-wrapper {
max-height: none !important;
}
Jana Duggar: Semua yang Dia Katakan Tentang Cinta dan Jendela 5 Tahunnya untuk Menemukan 'Yang Satu'