描述代码执行停止后的那一刻的正确术语是什么?

时间:2016-07-24 15:38:50

标签: javascript settimeout setimmediate

在JavaScript中,可以在代码的当前位完成执行la setImmediate或setTimeout(...,0)之后立即执行代码。

引用执行差距的正确术语是什么?

我想知道,因为我正在为单元测试编写一个实用程序,一旦发生其中一个间隙就允许测试继续,我想给它一个有意义的名称。

目前我的代码看起来像这样,函数叫做wait:

export default function wait(done, ...callbacks) {
  let callbackIndex = 0;
  function invokeNext() {
    if (typeof callbacks[callbackIndex] === 'function') {
      setImmediate(() => {
        try {
          callbacks[callbackIndex]();
        }
        catch (e) {
          return done(e);
        }
        callbackIndex += 1;
        invokeNext();
      });
    } else {
      return done();
    }
  }
  invokeNext();
}

它的用法如下:

wait(done, () => {
  //... assert something after first code gap
}, 
() => {
  //... assert something after second code gap
});

1 个答案:

答案 0 :(得分:0)

您可以描述"差距"作为"任务队列检查","任务检查"或者"排队检查",请参阅Efficient Script Yielding

  
      
  1. Queue 任务 task
  2.