轻量级的可调视图和面板分栏Layout布局工具[开源] Split是一个轻量级的可以动态调整的视图或面板分栏工具。没有任何外部依赖,只需要一两个有父元素的普通元素。可将页面水平或垂直分割,你不需要自己在面板之间手动插入分割条。
天猫双11前端分享系列(四):大规模 Node.js 应用 在刚刚过去的 15 年天猫双十一中,Node.js(后文简称 node) 大放异彩,不仅帮助前端团队快速、高效的解决双十一各个业务上的页面渲染问题,同时在性能和稳定性上也表现非常出色,大大降低了双十一硬件成本的同时,在整个双十一期间未出现任何一起由 node 引发的线上故障。
覆盖业务
经过一年时间的改造和推进,到 15 年双十一的时候,已经有大量的业务都有了 node 的身影,基本上天猫大部分的 web 页面都是通过 node 渲染出来:
- 天猫首页、大部分天猫频道页、双十一会场以及所有天猫的活动页面都全部基于 node 应用提供服务。
- 商品详情、店铺和搜索页等主流程链路上,以及天猫超市和天猫会员等业务线上的页面渲染。
- 提供给内部运营小二的天猫页面搭建平台 web 层基于 node 进行开发,双十一期间在此平台上搭建了超过 1000+ 个双十一相关活动页面。
我被问得最多的十个JavaScript前端面试问题 过去几个月我一直在面试前端有关的职位,在面试环节经常被问到一些技术问题。我觉得可以跟大家分享一下。两次面试是通过在线答题进行的,两次是面对面,还有两是通过skype。我申请的职位都是非常非常初级的,不是 中级/资深的职位。
我知道有很多人不同意这种类型的面试。其实不管你喜不喜欢,你都得接受。尤其当你是自学的,而且要申请第一份工作时。
传统JavaScript与Asm.JS的象棋大战 微软的工程师做了两个自动下象棋的引擎。它们几乎完全相同,包括源代码。唯一的一处区别是有一个标志指定使用asm.js解释执行。一个语法更加严格的JavaScript子集,可以通过底层编绎提升JavaScript引擎的性能。
掌握Node.js的文件系统[File System 基础] Node最引以为傲的就是它有一个非常小的核心。有一些语言绑定了完整的POSIX API,而 Node实现了尽可能少的绑定,并通过同步、异步或流API形式暴露他们。
这种方法意味着,操作系统中有一些非常方便的功能,需要在Node中重建。这是一个教你如何使用文件系统软件包的实用教程。
Stop-Server:用手机关闭你的电脑 关闭电源: 使用的Node.js、手机和电脑(在OS X,Linux和Windows的作品)
创建这个项目是因为,我有时侯会躺床上看电影,而我想远程关掉电脑:)
JavaScript也有getter/setter方法:ES5 Object对象的5个不为人知的特性 ECMAScript 5支持getters和setters。你可以通过
描述方法来实现。
var obj = {
get foo() {
return Math.random();
},
set foo(value) {
console.log('SET foo = '+value);
},
};
QRCode:用纯JavaScript实现的微信二维码图片生成器 注* 之前的二给码分享功能大多是由后端实现的,对服务器的负载较重,这里有一个前端实现的版本,而且性能还可以。QRCode.js是javascript实现二维码(QRCode)制作生成库。 QRCode.js有着良好的跨浏览器兼容性(高版本使用HTML5的 Canvas,低版本IE使用table元素绘制),而且QRCode.js没有任何依赖。
ES6中的Map与JSON的相互转化(序列和持久化) 当你需要存一些键值对数据时,然后你不知道key是哪些对象类型。你最好把他们存在Map中,这比存在Object中好些。
注* Map支持任意类型如Object作为key; 目前JSON.stringify和JSON.parse并不支持Map;
JavaScript正在变成Web界的C++ 从那以后,我觉得我一直在看着JavaScript慢慢变成C++,它成为了“kitchen sink”式的语言(注*来自二战时期的成语"everything but the kitchen sink", 指除了洗碗槽外各式各样的炮弹齐发,现在指有太多的东西)。因此,许多新的功能被添到
ES6的新规范上。从字面上统计这个规范已经是ES5规范长度的两倍。更糟糕的是,在ES6规范完成之前,已经有人预定了一箩筐的新功能要集成到ES7。他们都还没有完成ES6,就已经开始计划ES7了。有一些JavaScript语义不一致的地方需要修复,但新加入的ES6和ES7的新特性无助于解决这些问题,他们仅仅是增加了新功能(或者说:复杂性)到这个语言。