javascript - 记录执行异步等待功能所花费的时间

标签 javascript

我如何知道这个函数执行需要多少时间?

export async function queryElasticSearch(userQuery, index) {
    if (_.isEmpty(userQuery)) {
        throw new Error('User query is empty or null');
    }
    try {
        const elasticSearchRequestBody = getElasticSearchRequestBody(index, userQuery);
        return await elasticSearchClient.search(elasticSearchRequestBody);
    } catch (err) {
        throw err;
    }
}

最佳答案

像这样:

export async function queryElasticSearch(userQuery, index) {
  const start = Date.now()
  try {
    if (_.isEmpty(userQuery)) throw new Error('User query is empty or null');
    const elasticSearchRequestBody = getElasticSearchRequestBody(index, userQuery);
    return await elasticSearchClient.search(elasticSearchRequestBody);
  } finally {
    console.log(Date.now() - start)
  }
}

或者,如果您想要以微秒为单位的精度,您可以使用 performance.now()...

编辑:最终根据 Bergi 的建议添加。

关于javascript - 记录执行异步等待功能所花费的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57241282/

相关文章:

javascript - 如何查看外部 JSON 文件?

javascript - 如何在 d3.js 树中拖动停止后禁用单击事件

javascript - 简单模式 iframe 动画

javascript - 如何实现 Toast UI 图片编辑器?

javascript - 如何使用 jQuery 更改图像源并以一些不错的效果加载它

javascript - 将 mysql 查询的响应保存到变量以供以后使用

javascript - AJAX 响应文本为空

javascript - localStorage 如何在 Javascript 中运行?

javascript - 保存后立即获取 Backbone

javascript - livequery 停止工作