标签JavaScript下的文章

文蔺 发布于 2017-09-12

[译] 深入 JavaScript 数组:进化与性能

正式开始前需要声明,本文并不是要讲解 JavaScript 数组基础知识,也不会涉及语法和使用案例。本文讲得更多的是内存、优化、语法差异、性能、近来的演进。在使用 JavaScript 前,我对 C、C++、C# 这些已经颇为熟悉。与许多 C/C++ 开发者一样,JavaScript 给我的第一印象并不好。Array 是主要原因之一。JavaScript 数组不是连续(contiguous)的,其...

阅读全文 »

文蔺 发布于 2017-05-04

Facebook 开源代码优化工具 Prepack

Fackbook 又搞了个大新闻!今天一早,朋友圈被一个名为 Prepack 的工具刷爆了。周刊君很好奇地看了下官网(prepack.io),这么厉害的工具,有必要第一时间向大家介绍一下(还能不能好好过个青年节了)。看 “Prepack” 这个名字就能大概知道,它的作用,肯定是在发布前(“pre”)对代码动了些什么手脚。官网介绍 Prepack 是“一个使 JavaScript 跑得更快的工具”。...

阅读全文 »

文蔺 发布于 2017-04-28

[译] 内容加速黑科技趣谈

数周前,在伦敦 Heathrow 机场等飞机的空闲中,我顺便处理了一些工作上的事情。不经意间发现 Github 在性能方面的一些问题,颇为诧异。通过新 tab 打开的页面,其加载速度竟然比直接点击链接打开的页面要快。不信请看视频(译者注:可能需要科学上网):GitHub link click vs new tab。点击链接的同时复制链接并在新的 tab 页中打开。可以看到,尽管先点击的是链接,但渲...

阅读全文 »

文蔺 发布于 2017-04-27

[译] Emoji.prototype.length —— Unicode 字符那些事儿

译者注:本文用到了很多 emoji 符号,建议不要使用 Windows 系统阅读本文。如今 emoji 已经成为文字交流的重要基础。离开这些精巧的符号,只怕很多对话早就因尴尬和误解而草草收场了。还记得当年短信风行时的那些事吗?没有笑脸表情的文字聊天过程中,常常会得到“你不是在开玩笑吧?”这样的回复,以免将一些无聊的笑话信以为真。后来并没有花多久的时间,大家都明白了,单纯靠文字来理解那些幽默与调戏并...

阅读全文 »

文蔺 发布于 2017-04-26

笔记:如何获取网站根域名

首先声明,这里所说的“根域名”,并不是指“全球共有13台根逻辑域名服务器”这句话中的“根域名”。而是指某一个站点的“根域名”(更新:或者也可以称之为“当前网站的主域名”,目前笔者并没有找到标准称呼)。百度搜索是“www.baidu.com”,百度翻译的域名是“fanyi.baidu.com”,百度地图的域名则是“map.baidu.com”。这些域名有共同的部分“baidu.com”。在本文中,我...

阅读全文 »

文蔺 发布于 2016-12-02

前端界面 Modal 的控制

问题提出需要说明的是,题目中所说的 Modal,指的是所有由前端开发者自定义的对话框,如通常用到的 Alert、Prompt、Confirm 等等,经常伴随着一个半透明的灰黑色全局 mask。事情源自某天使用某网站的页面,出现一个自定义的 Comfirm,习惯性按下回车确认,等了很久也不见弹出层关闭。于是很绝望。继而发现,真不是这一个网站的问题。看看一般浏览器原生的 alert、prompt、co...

阅读全文 »

文蔺 发布于 2016-11-20

[译] 手把手教你写一个 Javascript 框架:项目结构

过去几个月中,RisingStack 的 JavaScript 工程师 Bertalan Miklos 编写了新一代客户端框架 NX。Bertalan 将通过编写 JavaScript 框架系列文章与我们分享他在编写框架过程中的收获:本章将展示 NX 的项目结构,并讲述如何解决可扩展性、依赖注入以及私有变量等方面的一些困难。本系列章节如下:项目结构(正是本文)执行调度(Execution timi...

阅读全文 »

文蔺 发布于 2016-11-18

[译] 手把手教你写一个 Javascript 框架:沙箱求值

本文是“编写 JavaScript 框架”系列的第三章。在本章中,我将介绍浏览器中对代码求值的几种不同方式及其存在的问题,也会介绍一种依赖 JavaScript 新特性的方法。本系列主要是如何开发一个开源的客户端框架,框架名为 NX。我将在本系列中分享框架编写过程中如何克服遇到的主要困难。对 NX 感兴趣的朋友可以点击 NX 项目主页查看。本系列章节如下:项目结构(Project structur...

阅读全文 »

文蔺 发布于 2016-11-14

[译] 手把手教你写一个 Javascript 框架:执行调度

本文是“编写 JavaScript 框架”系列的第二章。在本章中,我将介绍 JavaScript 中异步执行代码的几种不同方式。你会读到关于事件循环相关的内容,以及像 setTimeout 和 Promise 等时间调度(timing)技术之间的差异。本系列主要是如何开发一个开源的客户端框架,框架名为 NX。我将在本系列中分享框架编写过程中如何克服遇到的主要困难。对 NX 感兴趣的朋友可以点击 N...

阅读全文 »

文蔺 发布于 2016-11-12

[译] 理解 Node.js 事件循环

本文介绍了 Node.js 事件循环是如何工作,如何使用 Node.js 构建高速应用。文章还会涉及最常见的一些问题及其解决方案。(我们正在编写一系列文章,聚焦于那些大规模使用 Node.js 的公司、有一定 Node 基础的开发者们的需求。)Node.js at Scale 系列章节:使用 npmnpm 技巧与最佳实践语义化版本和模块发布理解 Module System、CommonJS 和 r...

阅读全文 »