0

给定一个字符串s,如何在 JavaScript 中“执行”它?

我知道两种方法,即eval(s)(new Function(s))()

还有其他方法可以评估字符串吗?

4

1 回答 1

2

在 HTML 文档中,您可以创建<script>元素,但我认为不适<script>.innerHTML用于所有浏览器(但在 Firefox 中可以)。

var strToEval = "window.alert(1);";
window.onload = function() {
        var scrEl = document.createElement('script');
        scrEl.innerHTML = strToEval;
        document.body.appendChild(scrEl);
};

或者,而不是设置innerHTML

scrEl.src = "data:text/javascript," + strToEval;
于 2012-09-01T12:19:24.400 回答