Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript中用于评测实现的自动执行函数_Javascript - Fatal编程技术网

Javascript中用于评测实现的自动执行函数

Javascript中用于评测实现的自动执行函数,javascript,Javascript,还有一个问题与Javascript评测有关。 是的,我知道有很多关于Javascript代码分析的问题,相信我,我已经经历了很多。但我这里不是说任何分析工具。我只想为自己实现一个小的评测脚本,以帮助我掌握知识 我正试图为javascript编写一个简单的虚拟评测代码,但无法找到启动的方法。我实际上想要的是任何类似的函数,比如PHP中的declaretick函数,它在每次遇到任何语句时都会自动执行,这对于在PHP中编写评测代码非常有用 在Javascript中是否有类似于declare的函数,以便

还有一个问题与Javascript评测有关。 是的,我知道有很多关于Javascript代码分析的问题,相信我,我已经经历了很多。但我这里不是说任何分析工具。我只想为自己实现一个小的评测脚本,以帮助我掌握知识

我正试图为javascript编写一个简单的虚拟评测代码,但无法找到启动的方法。我实际上想要的是任何类似的函数,比如PHP中的
declare
tick函数,它在每次遇到任何语句时都会自动执行,这对于在PHP中编写评测代码非常有用

在Javascript中是否有类似于declare的函数,以便我可以实现这些函数来使用这些函数来分析我的代码
performance.now()
performance.memory
等等。我不想这样使用它

var a = performance.now();
// do your stuffs
var b = performance.now();
console.log('It took ' + (b - a) + ' ms.');
我认为这不是一个切实可行的方法。不想将分析代码注入到我的生产脚本中

我想要的是在我的脚本上运行分析代码,这样每次遇到生产脚本函数时它都会自动执行。或者你们能告诉我更好的开始方式吗


p.S.
我不是说使用不同的浏览器评测工具,而是说一些关于如何编写基本评测工具的小信息,这些工具在遇到javascript语句或函数时会自动触发

所有浏览器都有分析工具

如果您想要更多,可以在Firefox和Chrome上使用控制台API


也许类似javascript的AOP库可以帮助您

例如:

var timeTook;

var myObject = {
    doSomething: function(a, b) { 
        return a + b;
    }
};

function beforeFunction() {
    timeTook = performance.now();
}

function afterFunction() {
    console.log("It took " + (performance.now() - timeTook));
}

meld.before(myObject, 'doSomething', beforeFunction);
meld.after(myObject, 'doSomething', afterFunction);

另请参见SO中的内容。

AOP是一个好方法。但这更多是为了交叉关注,而不是分析。不同之处在于,AOP即使在生产代码中也会存在,而as分析代码不必出现在生产代码中。您可以将其集成到您的测试环境中

与分析器集成将更加方便。理想的分析器将为您的代码提供工具,因此您不必包装每个函数。
有这么好的图书馆

请仔细阅读这个问题。我不是说使用分析工具。我说的是如何构建一个基本的分析工具,这仅仅是为了我的知识。将帮助您从。。。它有许多工具来调试、配置、测试、计时。。。当然,这是一个开始,但如果你了解它们是如何工作的,我认为你将朝着正确的方向实现你的目标。