首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
精益前端
AlienZHOU
创建于2021-05-11
订阅专栏
分享前端开发、工具链、Nodejs服务端、客户端、产品设计等相关知识与思考
等 50 人订阅
共53篇文章
创建于2021-05-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Crafting Interpreters
This book contains everything you need to implement a full-featured, efficient scripting language.
【前端性能优化指南】4 - 如何加速页面解析与处理?
到目前为止我们已经介绍了很多环节,也已经有了许多「性能优化的武器」。不过不要掉以轻心,后续仍然有大量的工作等待我们来优化。这里就到了客户端接收响应的阶段了。
【性能优化指南】1 - 带你全面掌握前端性能优化 🚀
性能优化一直以来都是前端工程领域中的一个重要部分。很多资料[1][2][3]表明,网站应用的性能优化对于提高用户留存、转化率等都有积极影响。可以理解为,提升你的网站性能,就是提升你的业务数据(甚至是业务收入)。 性能优化广义上包含前端优化和后端优化。后端优化的关注点更多的时候是…
【前端性能优化指南】3 - 加快请求速度
在前一部分,我们介绍了浏览器缓存。当一个请求走过了各级前端缓存后,就会需要实际发送一个请求了。 介绍网络请求其实可以包含复杂的网络知识。不过,今天咱们的旅程主要聚焦于“前端性能优化”。因此,主要会介绍一些在这个环节中,前端性能优化可能会做的事儿。 1. 避免多余重定向 重定向是…
【前端性能优化指南】2 - 利用缓存减少远程请求
欢迎来到「前端性能优化之旅」的第一站 —— 缓存。 当浏览器想要获取远程的数据时,我们的性能之旅就开始了。然而,我们并不会立即动身(发送请求)。在计算机领域,很多性能问题都会通过增加缓存来解决,前端也不例外。和许多后端服务一样,前端缓存也是多级的。下面让我们一起来具体看一看。 …
【漫游Github】如何提升JSON.stringify()的性能?
1. 熟悉的JSON.stringify() 在一些性能敏感的场合下(例如服务端处理大量并发),或面对大量 stringify 的操作时,我们会希望它的性能更好,速度更快。这也催生了一些优化的 stringify 方案/库,下图是它们与原生方法的性能对比: 绿色部分时原生JSO…
如何在零JS代码情况下实现一个实时聊天功能❓
前段时间在 github 上看到了一个很“trick”的项目:用纯 CSS(即不使用 JavaScript)实现一个聊天应用 —— css-only-chat。即下图所示效果。 在我们的印象里,实现一个简单的聊天应用(消息发送与多页面同步)并不困难 —— 这是在我们有 Java…
🛠如何快速开发一个自己的项目脚手架?
下面是一个使用脚手架来初始化项目的典型例子。 随着前端工程化的理念不断深入,越来越多的人选择使用脚手架来从零到一搭建自己的项目。其中大家最熟悉的就是create-react-app和vue-cli,它们可以帮助我们初始化配置、生成项目结构、自动安装依赖,最后我们一行指令即可运行…
✨如何用JS实现“划词高亮”的在线笔记功能?✨🖍️
1. 什么是“划词高亮”? 上图的示例网站可以点击这里访问。用户选择一段文本(即划词),即会自动将这段选取的文本添加高亮背景,用户可以很方便地为网页添加在线笔记。 笔者前段时间为线上业务实现了一个与内容结构非耦合的文本高亮在线笔记功能。非耦合是指不需要为高亮功能建立特殊的页面 …
面试官:前端跨页面通信,你知道哪些方法?
在浏览器中,我们可以同时打开多个Tab页,每个Tab页可以粗略理解为一个“独立”的运行环境,即使是全局对象也不会在多个Tab间共享。然而有些时候,我们希望能在这些“独立”的Tab页面之间同步页面的数据、信息或状态。 正如下面这个例子:我在列表页点击“收藏”后,对应的详情页按钮会…
【3分钟速览】前端广播式通信:Broadcast Channel
在前端,我们经常会用postMessage来实现页面间的通信,但这种方式更像是点对点的通信。对于一些需要广播(让所有页面知道)的消息,用postMessage不是非常自然。Broadcast Channel 就是用来弥补这个缺陷的。 顾名思义,Broadcast Channel…
【漫游Github】quicklink 的实现原理与给前端的启发
近来,GoogleChromeLabs 推出了 quicklink,用以实现链接资源的预加载(prefetch)。本文在介绍其实现思路的基础上,会进一步探讨在预加载方面前端工程师还可以做什么。 1. quicklink 是什么? quicklink 是一个通过预加载资源来提升后…
(S)CSS中实现主题样式的4½种方式 [译]
1. 什么是主题样式? 相信大家对网页的主题样式功能肯定不陌生。对于一些站点,在基础样式上,开发者还会为用户提供多种主题样式以供选择。 下面就是一个主题样式功能:用户可以在右侧选择自己喜欢的主题色,从而得到一个“个性”的页面。 还有时候,我们开发了一个系统用来售卖,采购我们系统…
年终回顾,为你汇总一份「前端技术清单」
记得年初的时候我给自己制定了一个学习计划,现在回顾来看完成度还不错。但仍有些遗憾,一些技术点没有时间去好好学习。 在学习中我发现,像文章这样的知识往往是碎片化的,而前端涉及到的面很多,如果不将这些知识有效梳理,则无法形成体系、相互串联。最后有一种东懂一块,西了解一点的感觉。因此…
Idle Until Urgent
巧用requestIdleCallback。随着JS与浏览器的发展,开发者对浏览器运行的控制能力越来越强,粒度也越来越细。作者提出了“Idle Until Urgent”策略来提升 FID:除非到非执行不可的时候,否则就等浏览器空闲时再执行代码。
【webpack进阶】你真的掌握了loader么?- loader十问
1. loader 十问 在我学习webpack loader的过程中,也阅读了网上很多相关文章,收获不少。但是大多都只介绍了loader的配置方式或者loader的编写方式,对其中参数、api及其他细节的介绍并不清晰。 也许你也会有类似的疑问。下面我会结合loader相关的部…
【webpack进阶】可视化展示webpack内部插件与钩子关系📈
webpack的成功之处,不仅在于强大的打包构建能力,也在于它灵活的插件机制。 也许你了解过webpack的插件与钩子机制;但你或许不知道,webpack内部拥有超过180个钩子,这些钩子与模块(内置插件)之间的「创建」「注册」「调用」关系非常复杂。因此,掌握webpack内部…
下一页