【译】你不知道的Chrome调试工具技巧 第七天:异步consle的趣味小窍门

特别声明

本文是作者 Tomek Sułkowski 发布在 medium 上的一个系列。据作者透露一共有24篇,一直更新到12月24日
版权归原作者所有。

前两篇的翻译链接我已经给到了作者本人,虽然他不理解中文,但是他还是很开心哈哈,截图在最后

译者在翻译前已经和作者沟通得到了翻译整个系列的许可。
为了不影响大家阅读,许可的记录在这里

正文

在马上就要迎来假期的这 24 天里,我将会发布一系列短篇的文章,关于如何将开发工具使用得更加有意思,昨天我们了解了Command Menu我们今天从编号21开始,说的是:

21. Console 是异步的

如今,越来越多与浏览器有关的API都是基于Promise的。当你使用 promise 的时候你通常使用 .then(处理方法) 或者 将它( promise )包裹在 async 方法中,并且使用 await 来得到它的结果。

这是我们经常在 JavaScript/TypeScript 中大量使用的东西,但是在 Console 中书写,这样的结构一点都不方便。

就是像下面这样

或者这样

额,太可怕了! 我曾经在写这段代码时失败了两次,漏写了一个括号或者是在我完成输入之前意外的(触发)执行了这段代码。

但是如果我们的console本来就是默认被 async 包裹住的呢?

你猜怎么着,还真是这样!你可以直接使用 awit

事实上在 Console 中使用 promise 要比在源码中使用起来要简单得多!

22.用你的异步console 来看一些更酷的东西

fetch 的例子相当无聊,我同意 -- 这儿有一些新玩法:你可以通过你的 console 来获取到更多有意思的信息。

  • Storage 系统的 占用数 和 空闲数
await navigator.storage.estimate()
复制代码

  • 你的设备的电池信息

为了更好的效果,让我们将这条 tip 和 另一天中提到的console.table来合并使用:

提醒:这是一条不推荐使用的API,尽管看起来这么酷炫...

  • 媒体能力

  • Cache storage keys

(译者注:Cache storage keys 一般用来对 requestresponse 进行缓存)

更多的例子不胜枚举。能够在 console 中轻松的获取 promise 包裹的值绝对是相当方便的。

今天的分享就到这里~

惯例: 如果你从这里学到了一些新东西

→ 你可以点个赞再走嘛~
→ 关注我:Twitter:Tomek Sułkowski

其他系列

其他此系列的文章,马上就会翻译出来,到时会贴出对应的链接在此处。

写在最后

如果你对我的翻译表示肯定,也可以关注我一波哦~ 顺便我的开源项目,求一波 star→ 看这里, 美丽的博客系统

关于这次翻译,作者的回复

猜你喜欢

转载自juejin.im/post/5c0fdfc46fb9a049b13e0d82