Javascript 执行aync等待功能所用的日志时间
如何计算此函数执行所需的时间Javascript 执行aync等待功能所用的日志时间,javascript,Javascript,如何计算此函数执行所需的时间 export async function queryElasticSearch(userQuery, index) { if (_.isEmpty(userQuery)) { throw new Error('User query is empty or null'); } try { const elasticSearchRequestBody = getElasticSearchRequestBody(i
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的建议最后添加。您也可以使用
控制台实现此功能。时间
ie
export async function queryElasticSearch(userQuery, index) {
console.time('time');
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.timeEnd('time')
}
}
catch(err){throw err;}
毫无意义。只需放下整个try
包装器。看看你应该使用finally
来获取结束时间戳