从字符串调用函数
在 JavaScript 中,可以将表示函数调用的字符串转换为实际的函数调用。考虑这样的情况:我们有一个字符串:
"clickedOnItem(" + t.parentNode.id + ")"
,我们想要将其转换为函数调用:
clickedOnItem(IdofParent);
要实现这一点,我们可以利用以下方法:
<code class="javascript">var fn = window[settings.functionName]; if(typeof fn === 'function') { fn(t.parentNode.id); }</code>
在此代码片段中,我们首先使用存储在 settings.functionName 中的字符串从 window 对象检索函数引用。如果该函数存在,我们将继续使用所需的参数调用它。
例如,如果 settings.functionName 设置为“clickedOnItem”,则执行代码将导致:
<code class="javascript">var fn = window["clickedOnItem"]; // Fetch the function reference fn(t.parentNode.id); // Invoke the function</code>
这有效地模仿了我们想要的手动函数调用。请记住,由于潜在的安全性和可维护性问题,这种方法通常不受欢迎。考虑探索更安全的替代方案,例如使用 Function 构造函数或箭头函数来动态构造函数调用。
以上是如何在 JavaScript 中从字符串执行函数调用?的详细内容。更多信息请关注PHP中文网其他相关文章!