Javascript代码作为变量
作者:互联网
好吧,这可能听起来有点疯狂,但听我说:)
我想在javascript中执行以下操作:
define START_OF_EVERY_FUNCTION = "try {"
define END_OF_EVERY_FUNCTION = "} catch () {}"
function TEST () {
START_OF_EVERY_FUNCTION
// rest of function
END_OF_EVERY_FUNCTION
}
基本上,我可以定义一个javascript行(代码)列表并包含它们如上所述?我正在寻找一种技术,而不是关于这是否是一个好主意的评论或者在try / catch块中包装所有函数的争论.
我知道eval(),但我不认为你可以像上面那样评估语句.
解决方法:
这可能很愚蠢,但您可以通过传递它们来定义主函数并通过它运行其他函数.
var execute = function(func){
alert('before');
func();
alert('after');
};
function sayHi(){
alert('hi there');
}
execute(sayHi);
根据要求,传递参数的示例.
var execute = function(func){
alert('before');
var ret = func.apply(null, Array.prototype.slice.call(arguments, 1));
alert('after');
};
function saySomething(sayWhat){
alert(sayWhat);
}
execute(saySomething,'hey there');
标签:javascript,code-reuse 来源: https://codeday.me/bug/20190607/1191403.html