每周见闻分享:2025-01-26 - 2025-02-02
约 508 字大约 2 分钟
2025-02-02
每周见闻分享:2025-01-26 - 2025-02-02
工具
1、Ghostty[^1]
标签:Tools
一个终端模拟器,类似 iTerm2、Tabby。利用了 GPU 和 CPU 加速。
目前使用下来体验不错,速度比 iTerm2 和 Tabby 要快且无缝支持 zsh 的配置。唯一的缺点是配置文件需要自己去看文档写,没有 GUI 界面。

Coding
1、ArkType[^2]
标签:Resource,JavaScript,TypeScript
一个类似于 Joi 的校验库。官网上写着有更好的错误提示、性能上也比其他库如 Zod、Yup 要强。
工作中使用 Joi,但苦于其效率和多版本之间的冲突也一直在看其他类似的库。这个库比较新,生态方面并没有 Zod 完善,考虑到迁移和文档自动生成的成本,选择 Zod 的可能性更高。

2、Safe Assignment | Alan Johnson[^3]
标签:JavaScript
一个关于 JS try/catch 语法的新提案。 const [error, value] ?= maybeThrows(); 看着像 Go 的语法,主要是节约了 try/catch 的代码长度以及避免在外层多定义 let 来对错误做处理。
文章给出了类似的实现,看了更有种回调时期的感觉。不过同样的讨论,之前翻译过的一篇感觉说的更清新一些。 译:在 TypeScript 中像 Go 和 Rust 那样处理错误?没有 Try/Catch(https://konata9.github.io/2024/05/10/2024/translate-ts-with-go-and-rust-errors/)

3、How long is a second in JavaScript? | TimeTime[^4]
标签:JavaScript
很不错的一篇文章,从 1 秒入手介绍了 JavaScript 中时间相关的知识。 UTC 和 POSIX 的区别,特别是对于闰秒的处理。更多的是通用概念的介绍。

参考文章:
- [1] Ghostty: https://ghostty.org/
- [2] ArkType: https://arktype.io/
- [3] Safe Assignment | Alan Johnson: https://nalanj.dev/posts/safe-assignment/
- [4] How long is a second in JavaScript? | TimeTime: https://docs.timetime.in/blog/how-long-is-a-second-in-js/
