我认为这有点不寻常,但这就是我的意思。
我有一个生成html + js页面的.net应用程序。
我有一个叫做Unit的东西,它是不同html元素的组合,并且具有onlaod和onunload的人工事件。

function DisplayableUnit(content, onload_js, onunload_js)
{
    this.onload_js = onload_js; //different functions calls like "f1(); f2();"
    this.onunload_js = onunload_js;
    this.content = content; //string of html tags
}

function loadUnitTo(elem_id, unit)
{
    var elem = document.getElementById(elem_id);

    if (elem)
        elem.innerHTML = unit.content;

    if (unit.onload_js)
        ;//how to execute it?
}


许多站点都说评估是不好和不安全的事情。但这是唯一的选择吗?
我需要没有任何第三方东西的纯JS解决方案。

最佳答案

您可以将其作为如下函数执行:

var theInstructions = "alert('Hello World'); var x = 100",
    F=new Function (theInstructions);

return(F());


this stackoverflow线程复制;)

关于javascript - 如何在不带eval的情况下执行以字符串形式传递给JS函数的函数调用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24831284/

10-13 23:05