Bagaimana untuk Mengesan Butiran Fungsi Pemanggil (Nombor Talian dan URL Sumber) dalam JavaScript?

Barbara Streisand
Lepaskan: 2024-10-20 21:53:30
asal
829 orang telah melayarinya

How to Trace Caller Function Details (Line Number and Source URL) in JavaScript?

Menjejaki Butiran Pemanggil dalam JavaScript: Nombor Talian dan URL Sumber

Untuk mengesan butiran fungsi pemanggil, termasuk nombor talian dan URL sumber, pertimbangkan pendekatan berikut:

Mendapatkan Nama Fungsi Pemanggil:

<br>var callerFunc = arguments.callee.caller.toString();<br>callerFuncName = (callerFunc.substring(callerFunc.indexOf("function") 8, callerFunc.indexOf("(")) || "anoynmous")<br>

Kod ini coretan memperoleh nama fungsi pemanggil.

Mendapatkan semula Nombor Talian Pemanggil:

Untuk mendapatkan nombor talian dari mana fungsi pemanggil digunakan:

function getErrorObject() {
    try {
        throw Error('');
    } catch (err) {
        return err;
    }
}

var err = getErrorObject();
var caller_line = err.stack.split("\n")[4];
var index = caller_line.indexOf("at ");
var clean = caller_line.slice(index + 2, caller_line.length);
Salin selepas log masuk

Kaedah ini memanfaatkan sifat tindanan objek ralat JavaScript untuk mengakses nombor talian pemanggil.

Menentukan URL Sumber Pemanggil:

Malangnya, ia tidak mudah untuk mendapatkan URL sumber secara terus daripada fungsi pemanggil Walau bagaimanapun, anda boleh menggunakan bundler seperti webpack dengan peta sumber untuk menjana pemetaan antara kod yang digabungkan dan fail sumber, membolehkan anda memetakan nombor talian pemanggil ke lokasi sumber asalnya. .

Atas ialah kandungan terperinci Bagaimana untuk Mengesan Butiran Fungsi Pemanggil (Nombor Talian dan URL Sumber) dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!