我的JSPerf测试用例在使用回调评估toggle()时“中断”

时间:2013-01-31 22:30:02

标签: javascript jsperf

在测试my answerAdding HTML5 hidden attribute support to jQuery .toggle() method时,我创建了a JSPerf test to determine how much slower .toggle(function() \[...\]) would be compared to .toggle()。令我惊讶的是,报告执行额外处理的脚本执行得更快!除了结果是反直觉的,我怀疑是一个问题,因为我也看到在结果返回后很久就在屏幕上切换。

如何“修复”我的测试以获得准确的结果?

1 个答案:

答案 0 :(得分:1)

$('button').click(function() {
    $('#myElement').toggle(function() { alert("called") })
})

传递给toggle的回调函数仅在切换操作完成后才会执行。换句话说,它是一个异步操作,所以如果你想测量在回调被触发之前需要多长时间,use jsPerf’s async/defer feature