![](/img/trans.png)
[英]How to make function with forEach loop check 2 files, if exists return with string if not return file name
[英]check if a function exists with its name in a string?
我在 Javascript 中動態創建函數。 有時我需要檢查某個函數是否實際上已經創建。
我有一個字符串形式的函數名稱。 如何根據字符串中的給定值檢查函數是否存在?
您可以使用以下方法檢查它是否在全局范圍內定義;
if (typeof window[strOfFunction] === "function") {
// celebrate
//window[strOfFunction](); //To call the function dynamically!
}
您可以使用評估:
if ( eval("typeof stringFunction === 'function'") ){ /*whatever*/ }
我們增加了 2 美分,因為接受的答案是正確的,但從一些澄清中受益:
window["myFunctionNameHere"]
是解決問題的一種簡單方法,但基本上將window
視為在所需范圍內可訪問的任何全局對象。 此外,當然,您必須確保在這樣的范圍內正確分配函數。
例如,在窗口的情況下,您首先需要
<script>
$(document).ready(function () {
window.myFunctionNameHere = function() {
console.log('Hello world');
}
});
</script>
在此之后,
typeof window["myFunctionNameHere"] === "function"
將按預期工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.