xiaochao Blog

Stay Hungry. Stay Foolish.

每天一个前端知识(18):javascript填坑史

frontend

1.setTimeout和setInterval深入理解 在setTimeout和setInterval深入理解这篇博客里笔者曾做过总结,我们知道JavaScript试单线程的产物,两个函数就是利用了插入代码的方式实现了伪异步,和AJAX的原理实际上是一样的。下面来看下这个例子: console.log("1"); setTimeout(function(){ conso...

每天一个前端知识(17):npm模块管理器

frontend

1.简介 npm有两层含义。一层含义是Node.js的开放式模块登记和管理系统,网址为http://npmjs.org。另一层含义是Node.js默认的模块管理器,是一个命令行下的软件,用来安装和管理node模块。 npm不需要单独安装。在安装node的时候,会连带一起安装npm。但是,node附带的npm可能不是最新版本,最好用下面的命令,更新到最新版本。 $ npm install...

每天一个前端知识(16):javascript之美(2)

frontend

每一门编程语言的作者都希望自己创造的语言是美的,而每门语言在发展的过程中的每个路口,都需要做出自己相应的选择。当越来越多这样的选择叠加在了一起之后,一门语言的独特的特性和味道就渐渐确定了。 这些个选择当中,有一些是值得赞美的,有些是应该回避的。但无论是前者还是后者,在该特性稳定之后就有对应的项目在使用它,于是出于兼容性的考虑以及对语言标准的实现,后者也没法从语言中去除出去。 众所周知,J...

每天一个前端知识(15):javascript之美(1)

frontend

0 0 是个 Number。在 JS 中,没有 int 和 float 之分,数值类型只有一个,就是 Number。这个 Number 呢,也不是可以表现无限大的,它有范围。在内部实现上,每个 Number 貌似是存在一个 52 bits 的空间里,我记不太清。 所以在 JS 中,Math.pow(2, 53) == Math.pow(2, 53) + 1 是返回 true 的。 多数...

每天一个前端知识(14):解密设计模式

frontend

“设计模式”(design patterns) 总的来说,如果光从字面上讲,程序里总是有一些“模式”可以发掘的。因为你总是可以借鉴以前的经验,来构造新的程序。你可以把这种“经验”叫做“模式”。可是自从《设计模式》(通常叫做 GoF,“Gang of Four”)这本书在 1994 年发表以来,“设计模式”这个词有了新的,扭曲的含义。它变成了一种教条,带来了公司里程序的严重复杂化。   G...

每天一个前端知识(13):开发从未如此清晰

frontend

关于开发,我们已经有了太多的方法论和工具,这之间其实很难说哪个方法论是正确的,哪个工具是最好用的;其实开发是“任性的”,它没有定律,如人饮水冷暖自知,其过程是否高效,除了团队的内功实力这个决定性因素之外,还取决于整个流程是否是清晰的。高效总是伴随着清晰而来,清晰的目标,清晰的计划,清晰的职责……而这也是Worktile采用看板的原因,直观可视的结构将原本错综复杂的流程变得清晰;而高度模块化的...

每天一个前端知识(12):你应该学习的前端语言和框架

frontend

大趋势 在过去的几年里,有一个越来越明显的趋势是 web 应用的商业逻辑逐步从后端转移到了前端,然后后端变得只需要处理简单的数据 API。这就让前端开发框架的选择变得尤为重要了。 另外一个重要的改变是 2015 年发布的 Edge 浏览器。这是 IE 的替代品,拥有全新的界面和更好的性能。跟 IE 不一样的是它同样采用了跟 FireFox 和 Chrome 一样的快速发布策略。这让 Jav...

每天一个前端知识(11):50个最常用的Unix/Linux命令

frontend

tar command examples Create a new tar archive. $ tar cvf archive_name.tar dirname/ Extract from an existing tar archive. $ tar xvf archive_name.tar View an existing tar archive. $ tar tvf a...

每天一个前端知识(10):前端工程师和设计师必备的Chrome插件

frontend

Google Chrome是最好用的几个浏览器之一,自从2011年11月份赶超Firefox之后,已成为当今互联网的主流浏览器。今天,我来分享下自己收集的一系列Chrome插件,希望能够提高大家的工作效率。 Devtools Terminal—嵌在浏览器中的终端。开发调试利器! LiveReload—集成LiveReload官方应用(Mac和Windows)以及guard-liver...

每天一个前端知识(9):JavaScript Style Guide

frontend

用更合理的方式写 JavaScript ES5 的编码规范请查看版本一,版本二。 翻译自 Airbnb JavaScript Style Guide 。 类型 1.1 基本类型: 直接存取基本类型。 字符串 数值 布尔类型 null undefined const foo = 1; let bar = foo; bar = 9; console.log(foo, bar); //...