Bagaimanakah Saya Boleh Mengakses Nama Fungsi Dari Dalam Fungsi dalam JavaScript?

Patricia Arquette
Lepaskan: 2024-10-28 12:50:30
asal
886 orang telah melayarinya

How Can I Access a Function's Name From Inside the Function in JavaScript?

Menemui Identiti Fungsi dari Dalam

Cabaran untuk mengakses nama fungsi dari dalam fungsi biasanya timbul dalam pengaturcaraan. Dengan JavaScript, beberapa pendekatan wujud untuk menyelesaikan isu ini.

ES6: myFunction.name

Dalam ES6 dan versi yang lebih baru, penyelesaian langsung adalah dengan menggunakan myFunction.name harta benda. Atribut ini memberikan nama fungsi, menjadikannya kaedah yang cekap dan mudah.

ES5: Penghuraian Fungsi

Untuk ES5, fungsi tersuai bernama functionName(fun) boleh dibuat untuk mengekstrak nama daripada perwakilan rentetan fungsi. Ia memangkas awalan "fungsi " dan kurungan, memberikan nama fungsi yang diingini.

Pendekatan Berasaskan Regex

Sebagai alternatif, ungkapan biasa boleh digunakan untuk mendapatkan nama fungsi. Fungsi berasaskan regex oleh nus berikut menawarkan prestasi yang dipertingkatkan:

<code class="javascript">function funName(fun) {
  return fun.toString().match(/function ([^\(]+)[\s\S]*/)[1];
}</code>
Salin selepas log masuk

Awas dan Pertimbangan

Perlu ambil perhatian bahawa pemencil boleh mengoptimumkan nama fungsi untuk pemampatan yang lebih baik . Jika ini menimbulkan masalah, anda mungkin perlu melaraskan tetapan pengecil anda. Selain itu, Function.caller dan arguments.callee harus dielakkan kerana ia tidak standard dan tidak digalakkan dalam mod ketat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Nama Fungsi Dari Dalam Fungsi dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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!