周刊收集包含前端(但不限于前端)的文章、新闻、开源我的项目、工具等等,每周一更新。
News
TypeScript 公布4.4版本
次要变更:
- 提供针对 Aliased Conditions 的控制流剖析 (Control Flow Analysis)
- Catch 变量中默认应用 unknown 类型
- 新增 Exact Optional Property 类型
- Class static Blocks
- 针对 tsc --help 的降级和改良
- 性能改良
- 增加针对 JavaScript 的拼写倡议
- 等等
残缺信息能够查看:
https://devblogs.microsoft.com/typescript/announcing-typescript-4-4/
另外TypeScript有了新的主页:
https://www.typescriptlang.org/
npm registry正在弃用TLS 1.0和TLS 1.1
npm 发布公告称,从 2021 年 10 月 4 日开始,所有与 npm 网站和 npm registry 的连贯(包含软件包的装置),都必须应用 TLS 1.2 或更高版本。
Linux 诞生三十周年
1991 年 8 月 25 日,Linus Torvalds 在 Usenet 新闻组 comp.os.minix 上发表了 Linux 的诞生。他过后对新操作系统并不抱太高的冀望,他在邮件中说,“我正在为 386(486)AT clones 写一个(自在的)操作系统(只是喜好而已,不会和 GNU 一样成为宽泛且业余的操作系统)。”
30 年后的明天,Linux 曾经无处不在。世界上简直所有的次要网站,包含谷歌、Facebook 以及维基百科,都运行在 Linux 之上。云也是一样,即便是在微软本人的 Azure 当中,最受欢迎的操作系统依然是 Linux。寰球五百强超级计算机全副采纳 Linux。另外,得益于 Android 给力的市场体现,Linux 也成为最受欢迎的终端用户操作系统。
延展浏览:《Linus 坚守 30 年,扭转了世界》
Go 1.17 公布,说好的反对泛型又推延
Go 团队公布 Go 1.17,此版本为编译器带来了额定的改良,即传递函数参数和后果的新办法。这一变动表明,Go 程序的性能进步了约 5%,amd64 平台的二进制文件大小缩小了约 2%。将来版本将反对更多平台。
Go 团队原本预计在 Go 1.17 中增加泛型,但很遗憾通知大家,又要推延了。对于推延的泛型提案,Go Team 也在其官网博客示意,大家很期待泛型,因而他们始终在致力,为可投入使用做各种细节的打磨,2021 年这块会是重点。指标是 2021 年底,在 Go1.18 的 Beta 中让大家体验,因而不出意外泛型会在 Go1.18 实现,大家可刮目相待。
文章
如何避免别人歹意调试你的web程序
https://juejin.cn/post/7000784414858805256
⭐️ 随机不只是 Math.random —— 前端噪声利用
在理解噪声之前,我对随机的意识,仅仅停留在 Math.random。它很有用,比方 H5 里的简略抽奖程序,或者随机选取一张卡片... 而最近工作中须要实现一些的随机图像成果,让我发现这个函数能做的事非常无限。之后我偶尔理解到噪声这一种随机模式,它很完满的解决了我的问题。于是我想写这一篇文章,心愿能够让一些前端同学,特地是工作上波及较多成果还原的前端同学理解噪声,或者在这之后,你会对设计师设计稿上这些随便元素,有更多的想法。
https://mp.weixin.qq.com/s/cAAv2Bt5QsxlYXzEGvdNvA
⭐️ 奇思妙想 CSS 3D 动画 | 仅应用 CSS 能制作出多惊艳的动画?
本文将从比拟多的方面具体论述如何利用 CSS 3D 的个性,实现各类乏味、酷炫的动画成果。认真读完,你将会播种到:
- 理解 CSS 3D 的各种用处
- 激发你新的灵感,感触动画之美
- 对于晋升 CSS 动画制作程度会有所帮忙
https://mp.weixin.qq.com/s/yXkfV6ucKZocxxON-jZLIQ
如何应用React构建一个搜寻框
搜寻框是一种常见的组件形式,本文介绍了对于搜寻框的实现以及测试形式。
https://www.emgoto.com/react-search-bar/
应用 Electron 和 Create React App 构建桌面利用
https://mmazzarolo.com/blog/2021-08-12-building-an-electron-application-using-create-react-app/
深刻解析基于 Flutter 的 Web 渲染引擎「北海 Kraken 」技术原理
https://mp.weixin.qq.com/s/EI7loHgtQLG-cqRQVM6mZQ
浅聊WebRTC视频通话
https://juejin.cn/post/7000205126719766565
⭐️ npm 发包 -- tag 重要性
如果你还没公布过npm包,你应该看下。
如果你公布过npm包,你就更应该看下。
npm公布机制太过于简陋,本人手动操作以及应用不常见的性能时肯定要留神了。
https://www.yuque.com/docs/share/620c0da0-3e12-4473-b2e7-51ee52cf3e66
CSS为什么这么难学?
CSS为什么这么难学?肯定是你的办法不对。
https://mp.weixin.qq.com/s/_B9DAl6yTnxm5VN3zX_ljQ
⭐️ 精读《用 Babel 发明自定义 JS 语法》
https://mp.weixin.qq.com/s/QrdJAnwwGwv2iZjc9Ye7qg
微信跨平台硬件直播组件
微信视频号已提供跨平台硬件直播组件,反对挪动平台(iOS/Android)、PC 平台(Windows/macOS)和嵌入式平台(以 Raspberrypi 为例)。文章简要介绍了其解决的问题以及实现的计划。相比传统的挪动平台,宽广云厂商早已推出了各自的成套解决方案,微信视频号这次应该是奔着相干直播硬件而来,只是不知会擦出怎么的火花。有嵌入式硬件需要,或者在设计直播组件的同学都能够认真看看。
https://mp.weixin.qq.com/s/qK73om3ueP_S6i8qp8hgHQ
技巧
jsc:不须要node即可执行js代码
$ echo "print(1+2);" | jsc3
如果你是macOS用户,其实不须要装置Node或Deno就能够在终端里运行JavaScript,就像下面的代码。
jsc是JavaScriptCore的一部分,位于:
/System/Library/Frameworks/JavaScriptCore.framework/Versions/Current/Helpers/jsc
尝试jsc之前,你须要创立软链接或者把门路退出到环境变量中。
https://furbo.org/2021/08/25/jsc-my-new-best-friend/
SolidJs框架介绍
Solid也是一款响应式框架,然而并没有应用虚构DOM,相同,在编译时,将状态更新编译为独立的DOm操作方法。
https://css-tricks.com/introduction-to-the-solid-javascript-library/
怎么应用Promise.any()
Promise.any() 接管一个Promise可迭代对象,只有其中的一个 promise 胜利,就返回那个曾经胜利的 promise 。
然而如果承受的promise都是rejected或者传入的数组是空的,那是什么后果呢?
https://dmitripavlutin.com/promise-any/
async/await 优雅的错误处理办法
帮忙你从泛滥的try cath中释放出来。
https://juejin.cn/post/6844903767129718791
工具、软件
reaflow
reaflow是一款反对工作流编辑、流程图的React工具库。
https://github.com/reaviz/reaflow
linaria
一个零运行时的CSS-in-JS库。
- 将 CSS 纳入到 JS 体系中,并且这种反对是零老本的!CSS 相干代码会在编译期被抽出到 CSS 文件中
- 类 Sass 的 CSS 的语法
- 通过应用 CSS 变量,Linaria 反对疾速创立动静属性的 React 款式组件
- 应用 CSS sourcemaps 易于定位款式地位
- 反对 stylint
- 不再须要预处理器,能够应用 JavaScript 管制 CSS 的逻辑
- 然而反对应用预处理器,比方 Sass 或 PostCSS
https://linaria.dev/
react-webcam
React里的摄像头调用组件。
https://github.com/mozmorris/react-webcam
ls-lint
疾速的文件名、目录名校验工具。
只须要一个配置文件.ls-lint.yml
就能主动校验。
https://ls-lint.org/
simplex-noise
噪声算法在前端里的利用。
什么是噪声算法?
噪声是游戏编程的常见技术,广泛应用于地形生成,图形学等多方面。
那么为什么要引入噪声这个概念呢?在程序中,咱们常常应用间接应用最简略的rand()生成随机值,但它的问题在于生成的随机值太“随机”了,失去的值往往总是参差不齐。
https://github.com/jwagner/simplex-noise.js
扩大浏览:游戏开发中的噪声算法
https://www.cnblogs.com/KillerAery/p/10765897.html
iOS App 主动砸壳平台
iOS 中所有 APP 上传到 APP Store 后都会被加上一层爱护壳,如果咱们想拿到 IPA 进行钻研剖析, 须要对 IPA 进行脱壳。这个平台能够实现导出全网 IPA 进行主动脱壳性能,不过有些性能须要付费能力体验。
https://www.dumpapp.com/
tedious
通过tedious能够在node中连贯SQL Server数据库。
https://github.com/tediousjs/tedious
周刊首发于GitHub,欢送订阅:
我的周刊