Bagaimana untuk Menentukan Nama Fungsi Semasa dalam JavaScript?

Susan Sarandon
Lepaskan: 2024-10-21 15:32:02
asal
892 orang telah melayarinya

How to Determine the Name of the Current Function in JavaScript?

Menentukan Nama Fungsi Semasa dalam JavaScript

Dalam JavaScript, mengakses nama fungsi yang sedang dijalankan ialah keperluan biasa untuk penyahpepijatan dan pengendalian ralat. Memahami cara untuk mencapai ini boleh memberi manfaat dalam pelbagai senario pengaturcaraan.

Walau bagaimanapun, dalam ES5 dan versi JavaScript yang lebih baru, akses terus kepada nama fungsi tidak tersedia. Ini bermakna fungsi seperti arguments.callee dan arguments.callee.name tidak lagi disokong.

Dalam versi lama JavaScript (pra-ES5), mendapatkan nama fungsi boleh dilakukan menggunakan argumen. callee seperti yang ditunjukkan di bawah:

<code class="js">function myFunc() {
  console.log(arguments.callee.name); // "myFunc"
}</code>
Salin selepas log masuk

Walau bagaimanapun, dalam ES5 dan ke atas, arguments.callee tidak lagi dianggap sebagai cara yang boleh dipercayai atau standard untuk mendapatkan semula nama fungsi. Adalah disyorkan untuk mengelakkan penggunaannya dalam kod JavaScript moden.

Menghuraikan Nama Fungsi

Dalam versi JavaScript yang lebih lama di mana arguments.callee tersedia, anda mungkin perlu menghuraikan nama fungsi kerana ia mungkin termasuk maklumat tambahan:

<code class="js">function myFunc() {
  var funcName = arguments.callee.toString();
  funcName = funcName.substr('function '.length);
  funcName = funcName.substr(0, funcName.indexOf('('));

  console.log(funcName); // "myFunc"
}</code>
Salin selepas log masuk

Walaupun kaedah ini boleh berkesan dalam sesetengah pelaksanaan, adalah penting untuk ambil perhatian bahawa ia bergantung pada butiran khusus pelaksanaan dan mungkin tidak berfungsi secara konsisten dalam semua kes.

Ringkasan

Dalam JavaScript moden (ES5 dan ke atas), tidak disyorkan untuk bergantung pada mengakses nama fungsi secara dinamik. Walau bagaimanapun, dalam versi JavaScript yang lebih lama, pendekatan arguments.callee boleh digunakan dengan berhati-hati, memahami potensi hadnya.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Nama Fungsi Semasa 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!