首頁 >web前端 >js教程 >您可以在不使用'eval”或非標準功能的情況下動態命名 JavaScript 函數嗎?

您可以在不使用'eval”或非標準功能的情況下動態命名 JavaScript 函數嗎?

DDD
DDD原創
2024-11-17 11:08:01649瀏覽

Can You Dynamically Name JavaScript Functions Without Using `eval` or Non-Standard Features?

在JavaScript 中建立具有動態名稱的函數

可以在不訴諸eval 或非標準JavaScript 功能的情況下動態為函數分配真實名稱嗎?在偵錯上下文中尋找具有可識別名稱的函數時會出現此問題。

ECMAScript 2015 及更高版本 (ES6) 的解決方案

ES2015 引入了一個解決方案。將匿名函數表達式指派給物件屬性可以為函數提供該屬性的名稱。這與計算屬性名稱相結合,允許函數命名而不依賴函數構造函數或 eval。

在ES2015 中,以下程式碼片段建立一個具有動態名稱的函數:

The函數的名稱可以透過其name 屬性檢索或在錯誤堆疊追蹤中觀察:

請注意,某些瀏覽器可能不會在堆疊追蹤中顯示名稱。

以上是您可以在不使用'eval”或非標準功能的情況下動態命名 JavaScript 函數嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn