Hi 👋,欢迎访问我的博客


我是一名前端开发者,VS Code 插件和语言服务器开发者

我目前在开发基于 LSP 的 语言服务器,也在维护用 Go 构建的编译器

这里查看更多关于我的更多信息


我希望通过这个博客记录技术知识,提升影响力。如果你感兴趣,可以看看这些文章:

我为 VS Code 贡献了代码:这篇文章登上了阮一峰的科技爱好者周刊

LSP 与 VS Code 插件开发 第一章:记录我对 LSP 和语言服务器开发系列文章

怎么让 favicon 动起来:发现了吗,本网站的 favicon 会动



前端性能监控指标与实现

背景

从浏览器底层 api 说起,结合浏览器渲染原理,自底向上谈谈前端性能监控的指标具体都是如何实现的

W3C 提供了测试 Web App 性能特征的规范,和时间模型:


阅读全文

小程序跨分包复用代码方案

背景

为了减小用户一次性需要下载的代码体积,提高应用加载速度,小程序提出了代码分包的概念:
主包:无论小程序冷启动时正在加载哪个包的页面,都会默认加载主包代码。主包体积不能超过2M。
分包:用户访问分包内的页面,只会下载对应分包内的代码,别的分包不会被下载。


阅读全文

正则表达式

JS正则表达式完整教程(略长)

正则表达式用于1.匹配字符,或者2.匹配位置

1.字符匹配攻略


    阅读全文

    JS 的数值

    双精度浮点数

    JS 用双精度浮点数 double 储存 Number
    浮点数是一种对于实数的近似值的表示法


    阅读全文

    JS 模块化解决方案

    大纲

    浏览器环境的 JS——script 加载时机问题
    Node.js
    非官方的模块化方案——运行时加载
    ES6的官方方案————构建时模块合并


    阅读全文

    命令行选项标准

    在查找git push命令的文档时看到了下面的内容:

    img


    阅读全文

    JS 原型链、this 与 class

    原型链

    目的

    实现属性、方法共享


    阅读全文

    JS 事件循环

    背景

    JS 诞生时,为了简化多线程 DOM 操作带来的问题,设计成单线程。
    单线程遇到异步逻辑(定时、网络请求)又会阻塞住,因此加入了调度逻辑——事件循环


    阅读全文

    Promise 必知必会

    本文先讲讲现成的 Promise 对象怎么用,再讲怎么构造一个 Promise 对象。

    怎么用

    通过事件循环来异步执行的函数都有一个问题:如何优雅的调用函数,类似同步函数那样?


    阅读全文

    web 移动端开发踩坑

    浏览器内核

    所谓内核指渲染引擎,要和 js 引擎区分开来。js 引擎有 Chrome 用的大名鼎鼎的 V8 等,其他浏览器不尽相同。


    阅读全文