理解浮点数

相信大家在平常的 JavaScript 开发中,都有遇到过浮点数运算精度误差的问题,比如 `console.log(0.1 + 0.2 === 0.3) // false`。在 JavaScript 中,所有的数字包括整数和小数都是用 `Number` 类型来表示的。本文通过介绍 `Number` 的二进制存储标准来理解浮点数运算精度问题,和理解 `Number` 对象的 `MAX_VALUE` 等属性值是如何取值的,最后介绍了一些常用的浮点数精度运算解决方案。

[译] Web Components 介绍

任何UI框架或库最期望目标之一是帮助我们建立通用的模式或约定。这些约定使UI代码易于共享并为其提供理论基础。很长一段时间,每个框架或库都有自己的实现或UI组件版本。仅在该组件的生态中,这些组件可以实现代码复用。如果给定的UI组件/插件需要在不同的技术依赖中使用,往往由于特定的生态系统限制而成为局限。

  • joema
  • 2018-10-27
  • 111已阅读

制作60fps的高性能动画

说到web的高性能动画,这部分内容其实已经是老生常谈的了,不过其中还是有不少比较新的而且非常实用的内容可以和大家分享一下。 读完这篇文章后相信大家都会对动画渲染的机制以及制作60fps动画的关键要素有足够的理解,以后遇上了动画相关的问题也可以很好的从源头上解决。

web模拟终端博客系统

前段时间做了一个非常有意思的模拟终端的展示页:http://ursb.me/terminal/(没有做移动端适配,请在PC端访问),这个页面非常有意思,它可以作为个人博客系统或者给 Linux 初学者学习终端命令,现分享给大家~

自己动手打造前端性能监控系统

了解前端性能监控的方式以及如何打造监控系统

【译】 开始在web中使用JS Modules

JS modules,即ES6的模块化特性,通过`<script type="module">`可以实现不经过打包直接在浏览器中import/export,此玩法确实让人眼前一亮。

前端水印生成方案

前段时间做某系统审核后台,出现了审核人员截图把内容外泄露的情况,虽然截图内容不是特别敏感,但是安全问题还是不能忽视。于是便在系统页面上面加上了水印,对于审核人员截图等敏感操作有一定的提示作用。

【译】JavaScript与WebAssembly进行比较+在哪些情况下会优于JavaScript

了解WebAssembly的功能以及使用场景

详解WebRTC——网页实时通信技术

WebRTC相关技术有很多可以创新的点,比如业界已有创业团队在做Web P2P,核心技术就是WebRTC + DASH协议,共享空闲资源,基于此可以做雾CDN,节点都在用户侧,去中心化

直播全流程探索

近年来,直播兴起,QQ音乐也接入了直播能力,支持演唱会的直播和主播、明星直播,根据互动方式的不同,我们可以分为互动直播和推流直播,本人有幸参与了直播从无到有的过程;对直播这一块有了一个比较清晰的认识,本文主要对web部分的直播流程进行介绍

  • joema
  • 2018-05-27
  • 508已阅读

puppeteer初体验

puppeteer 翻译是操纵木偶的人,利用这个工具,我们能做一个操纵页面的人。puppeteer是一个nodejs的库,支持调用Chrome的API来操纵Web,相比较Selenium或是PhantomJs,它最大的特调就是它的操作Dom可以完全在内存中进行模拟既在V8引擎中处理而不打开浏览器,而且关键是这个是Chrome团队在维护,会拥有更好的兼容性和前景。

vue打包优化之code spliting

在http1的时代,比较常见的一种性能优化就是合并http的请求数量,通常我们会把许多js代码合并在一起,但是如果一个js包体积特别大的话对于性能提升来说就有点矫枉过正了。而如果我们对所有的代码进行合理的拆分,将首屏和非首屏的代码进行剥离,将业务代码和基础库代码进行拆分,在需要某段代码的时候再加载它,下次若再需要用则从缓存中读取,一来可以更好地使用浏览器缓存,再者就是可以提高首屏加载速度,很好提升用户的体验。

Top