摘要:
2016年马上过去了,像过去六年中的每一年一样,Web前端领域又产生了“面目全非”而又“耳目一新”的变化,不但旧事物持续不断地被淘汰,新事物也难保坐久江山,大有岌岌可危之势。开源界如群雄逐鹿,不断生产新的概念、新的框架、新的工具,去年中一些流行的技术今年大多得到了进一步的演进和升级,活跃度非常高,却
阅读全文
posted @ 2016-12-31 15:20
{前端开发}
阅读(743)
推荐(1)
摘要:
在开发环境下,往往需要一个工具来自动重启项目工程,之前接触过 python 的 supervisor,现在写 node 的时候发现 supervisior 在很多地方都有他的身影,node 也有一个 npm 模块 supervisior 也是用来监控进程的,不过除了 supervisior 外,还有
阅读全文
posted @ 2016-12-31 13:05
{前端开发}
阅读(37826)
推荐(0)
摘要:
闭包的用途。事实上,通过使用闭包,我们可以做很多事情。比如模拟面向对象的代码风格;更优雅,更简洁的表达出代码;在某些方面提升代码的执行效率。 1 匿名自执行函数 我们知道所有的变量,如果不加上var关键字,则默认的会添加到全局对象的属性上去,这样的临时变量加入全局对象有很多坏处,比如:别的函数可能误
阅读全文
posted @ 2016-12-13 17:37
{前端开发}
阅读(1257)
推荐(0)
摘要:
何谓技术体系 技术体系指社会中各种技术之间相互作用、相互联系、按一定目的、一定结构方式组成的技术整体。技术体系是科技生产力的一种具体形式。 前端技术体系的范围和作用 随着科技的发展,终端种类越来越丰富,前端行业也在迅猛发展,目前前端早已成为连接用户终端、视觉体验、服务端的重要一环,相比十年前前端的边
阅读全文
posted @ 2016-12-13 16:36
{前端开发}
阅读(2217)
推荐(0)
摘要:
注:以下所有例子均 只 在 iOS 的微信中测试过,但对于饿了么APP的内置浏览器同样适用(两者使用相同内核) 引题 工作中常常有需要显示大量信息的情况,列表超出一屏就涉及到滚动的问题。例如 在 iOS 中用微信打开,滚动非常顺滑,so far so good!但某天产品需求有变,要求加一个固定在头
阅读全文
posted @ 2016-12-12 16:17
{前端开发}
阅读(28248)
推荐(1)
摘要:
作为一个前端,不能不考虑性能问题。对于大多数前端来说,性能优化的方法可能包括以下这些: 等等…… 有兴趣的同学,可以自行搜索雅虎关于前端优化的十四条规则。但这些规则当中,有多少是需要前端工程师付诸实践的?就我来说,CDN、缓存的设置,就是不需要我去关心的(作为一个苦逼外包,是没有权限去生产环境操作的
阅读全文
posted @ 2016-12-11 23:24
{前端开发}
阅读(1606)
推荐(0)
摘要:
在Web开发中,需要将数据的变化实时反映到UI上,这时就需要对DOM进行操作,但是复杂或频繁的DOM操作通常是性能瓶颈产生的原因,为此,React引入了虚拟DOM(Virtual DOM)的机制。 什么是虚拟DOM? 虚拟DOM VS 直接操作原生DOM? 虚拟DOM VS MVVM? 对React
阅读全文
posted @ 2016-12-11 23:10
{前端开发}
阅读(9974)
推荐(1)
摘要:
这两天比较闲,写了两篇关于JS性能缺陷与解决方案的文章(《JS特性性能缺陷及JIT的解决方案》,《Javascript垃圾回收浅析》),主要描述了untyped,GC带来的问题与JIT引擎的解决方案。但相对于Js引擎的问题,我认为DOM导致的性能问题更值得关注。 一.Dom的性能瓶颈及原因 1. 为
阅读全文
posted @ 2016-12-11 23:03
{前端开发}
阅读(471)
推荐(0)
摘要:
React组件性能优化 前言 众所周知,浏览器的重绘和重排版(reflows & repaints)(DOM操作都会引起)才是导致网页性能问题的关键。而React虚拟DOM的目的就是为了减少浏览器的重绘和重排版。 说到React优化问题,就必须提下虚拟DOM。虚拟DOM是React核心,通过高新的比
阅读全文
posted @ 2016-12-11 14:59
{前端开发}
阅读(4874)
推荐(0)
摘要:
对于重绘和回流的概念不是很清晰,查看了许多博文,在这里说一下自己的理解!!欢迎同学们与我交流。 1、重绘概念 2、回流的概念 3、如何减少重绘和回流 重绘和回流也是为什么要减少dom操作的原因之一,在本博客文章《dom tree和render tree》中会有详解。
阅读全文
posted @ 2016-12-11 14:37
{前端开发}
阅读(327)
推荐(0)
摘要:
在移动设备上进行网页的重构或开发,首先得搞明白的就是移动设备上的viewport了,只有明白了viewport的概念以及弄清楚了跟viewport有关的meta标签的使用,才能更好地让我们的网页适配或响应各种不同分辨率的移动设备。 一、viewport的概念 通俗的讲,移动设备上的viewport就
阅读全文
posted @ 2016-12-11 01:35
{前端开发}
阅读(238)
推荐(0)
摘要:
引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试。 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都各自有自己的开发流程,构建工具,测试集合 关注点分离,前后端变得相对独立并松耦合 开发流程 后台编写
阅读全文
posted @ 2016-12-10 23:20
{前端开发}
阅读(772)
推荐(0)
摘要:
什么是耦合? 说白了,就是模块间的依赖性,就是耦合。 举个例子:5个人共同开发一个模块,应该尽量松耦合,就是联系越小越好,这样一个模块变动,另一个模块就不会变动。
阅读全文
posted @ 2016-12-10 23:19
{前端开发}
阅读(2132)
推荐(0)
摘要:
MVC是一种设计模式,它将应用划分为3个部分:数据(模型)、展现层(视图)和用户交互(控制器)。其中: M - MODEL(模型) V - VIEW(视图) C - CONTROLLER(控制器) 一个事件的发生是这样的过程: 1. 用户和应用产生交互。 2. 控制器的事件处理器被触发。 3. 控制
阅读全文
posted @ 2016-12-08 21:21
{前端开发}
阅读(8754)
推荐(2)
摘要:
这里讲了一个最最最简单的JS中基于原型链的继承和多态。 先看一下以下这段代码的实现(A是“父类”,B是“子类”): 输出结果为: 1 2 1 2 结果看来实现了一个函数,不同对象的执行,出现不同的结果。 B.prototype = new A(); 这句将A“类”的构造方法,赋值给了B的构造原型,使
阅读全文
posted @ 2016-12-07 10:41
{前端开发}
阅读(2307)
推荐(0)
摘要:
来源:https://segmentfault.com/a/1190000005863641 let和const命令 ES6新增let命令,用于声明变量,是块级作用域。 let声明的变量不会像var声明的变量发生“变量提升”现象,所以,变量一定要在声明后使用,不然就会报错。 暂时性死区:只要块级作用
阅读全文
posted @ 2016-12-04 12:02
{前端开发}
阅读(1549)
推荐(0)
摘要:
简介 GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。GitBook支持输出以下几种文档格式 静态站点:GitBook默认输出该种格式 PDF:需要安装gitbook-pdf依赖 eBook:需要安装ebook-con
阅读全文
posted @ 2016-11-27 14:49
{前端开发}
阅读(7210)
推荐(0)
摘要:
本文主要介绍netty对http协议解析原理,着重讲解keep-alive,gzip,truncked等机制,详细描述了netty如何实现对http解析的高性能。 1 http协议 1.1 描述 http协议主要使用CRLF进行分割。 1.2 请求包 主要包含三部分:请求行(line),请求头(he
阅读全文
posted @ 2016-11-24 16:10
{前端开发}
阅读(4072)
推荐(0)
摘要:
Nodejs基础中间件Connect 从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发。Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎。chrome浏览器就基于V8,同时打开20-30个网页都很流畅。Nodejs
阅读全文
posted @ 2016-11-22 23:37
{前端开发}
阅读(462)
推荐(0)
摘要:
定义函数的方法 定义函数的方法主要有三种: 其中,经常使用的是函数声明和函数表达式的函数定义方法,这两种方法有着很微妙的区别和联系,而且这两种方法的使用也容易混淆,所以这篇文章主要总结下这两种函数定义方法的相关知识点,当然本文的主题依然是关于函数提前的。 函数声明的典型格式: 函数表达式 函数表达式
阅读全文
posted @ 2016-11-13 23:17
{前端开发}
阅读(741)
推荐(0)
摘要:
原谅我做一次标题党,Ajax 不会死,传统 Ajax 指的是 XMLHttpRequest(XHR),未来现在已被 Fetch 替代。 最近把阿里一个千万级 PV 的数据产品全部由 jQuery 的 $.ajax 迁移到 Fetch,上线一个多月以来运行非常稳定。结果证明,对于 IE8+ 以上浏览器
阅读全文
posted @ 2016-10-30 22:47
{前端开发}
阅读(3589)
推荐(0)
摘要:
React组件属性类型(propTypes)校验 Prop 验证 随着应用不断变大,保证组件被正确使用变得非常有用。为此我们引入propTypes。React.PropTypes 提供很多验证器 (validator) 来验证传入数据的有效性。当向 props 传入无效数据时,JavaScript
阅读全文
posted @ 2016-10-27 10:57
{前端开发}
阅读(14629)
推荐(0)
摘要:
阅读目录 1.理解webpack加载器 2.html-webpack-plugin学习 3.压缩js与css 4.理解less-loader加载器的使用 5.理解babel-loader加载器 6.理解 extract-text-webpack-plugin(独立打包样式文件) 7.webpack打
阅读全文
posted @ 2016-10-24 23:01
{前端开发}
阅读(432)
推荐(0)
摘要:
Name 必须字段。 小提示: 不要在name中包含js, node字样; 这个名字最终会是URL的一部分,命令行的参数,目录名,所以不能以点号或下划线开头; 这个名字可能在require()方法中被调用,所以应该尽可能短; 不要在name中包含js, node字样; 这个名字最终会是URL的一部分
阅读全文
posted @ 2016-10-24 11:27
{前端开发}
阅读(592)
推荐(0)
摘要:
Nodejs基础中间件Connect 从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发。Nodejs框架是基于V8的引擎,是目前速度最快的Javascript引擎。chrome浏览器就基于V8,同时打开20-30个网页都很流畅。Nodejs
阅读全文
posted @ 2016-10-23 23:49
{前端开发}
阅读(343)
推荐(0)
摘要:
概述 passport.js是Nodejs中的一个做登录验证的中间件,极其灵活和模块化,并且可与Express、Sails等Web框架无缝集成。Passport功能单一,即只能做登录验证,但非常强大,支持本地账号验证和第三方账号登录验证(OAuth和OpenID等),支持大多数Web网站和服务。 官
阅读全文
posted @ 2016-10-23 23:18
{前端开发}
阅读(898)
推荐(0)
摘要:
相信大家对Travis Ci已经不再陌生了,Github上已经有大部分的项目已经采用了它。 Travis Ci是一个基于晕的持续集成项目,目前已经支持大部分主流语言了,如:C、PHP、Ruby、Python、Nodejs、Java、Objective-C等等,Travis Ci与Github集成非常
阅读全文
posted @ 2016-10-21 10:47
{前端开发}
阅读(5724)
推荐(0)
摘要:
本文样例代码 :https://github.com/demohi/learning-gulp 本文主要简单介绍一下基于gulp和webpack的前端工程化。 技术栈 React.js reFlux Node.js 我们的需求 基于CommonJS模块化开发 基于React.js的组件化开发(JSX
阅读全文
posted @ 2016-10-20 00:37
{前端开发}
阅读(815)
推荐(0)
posted @ 2016-10-11 17:22
{前端开发}
阅读(4)
推荐(0)
摘要:
ES6标准发布后,前端人员也开发渐渐了解到了es6,但是由于兼容性的问题,仍然没有得到广泛的推广,不过业界也用了一些折中性的方案来解决兼容性和开发体系问题,但大家仍很疑惑,使用ES6会有哪些兼容性问题。 一、兼容性问题现状 针对ES6的新特性兼容性问题,目前解决的方案是使用语法解析转换工具将es6语
阅读全文
posted @ 2016-10-04 19:56
{前端开发}
阅读(21159)
推荐(0)
摘要:
过去几年像 Underscore 和 lodash 等库进入许多JavaScript程序员的工具函数中。虽然这些工具库可以使你的代码写起来更容易,但是他们不一定使代码更简单或更容易理解。 各种工具函数库层出不穷,每个工具库的写法也各有不同,这样给阅读和维护你代码的人也带来了一定的困难,以为他必须了解
阅读全文
posted @ 2016-09-30 23:17
{前端开发}
阅读(3793)
推荐(0)
摘要:
我们知道,Array.prototype.slice.call(arguments)能将具有length属性的对象转成数组,除了IE下的节点集合(因为ie下的dom对象是以com对象的形式实现的,js对象与com对象不能进行转换) 如: 1 var a={length:2,0:'first',1:'
阅读全文
posted @ 2016-09-28 23:54
{前端开发}
阅读(207)
推荐(0)
摘要:
github上关于mootools一个issue的讨论很有意思,所以就想测试记录下。感兴趣的可以点击原页面看看。 这个问题来自IE(LTE8)中对checkbox和radio change事件的实现问题,在IE(LTE8)中测试下来,当你点击一个checkbox或者radio,它的change事件是
阅读全文
posted @ 2016-09-23 22:45
{前端开发}
阅读(3421)
推荐(0)
摘要:
H5项目常见问题及注意事项 Meta基础知识: H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 空白页基本meta标签 其他meta标签 常见问题: 移动端如何定义字体font-family 打电话发短信写邮件怎么实现 移动端touch事件(区分webkit和winphone) 移动端click
阅读全文
posted @ 2016-09-22 13:51
{前端开发}
阅读(1425)
推荐(0)
摘要:
http://www.cnblogs.com/Showshare/p/director-chinese-tutorial.html
阅读全文
posted @ 2016-09-17 20:52
{前端开发}
阅读(2754)
推荐(0)
摘要:
一、META/LINK相关: 1、百度禁止转码 通过百度手机打开网页时,百度可能会对你的网页进行转码,往你页面贴上它的广告,非常之恶心。不过我们可以通过这个meta标签来禁止它: <meta http-equiv="Cache-Control" content="no-siteapp" /> 相关链
阅读全文
posted @ 2016-09-11 16:59
{前端开发}
阅读(2458)
推荐(1)
摘要:
作者: 阮一峰 日期: 2015年7月10日 网页布局(layout)是CSS的一个重点应用。 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C提出了一种新的方案
阅读全文
posted @ 2016-09-01 19:24
{前端开发}
阅读(858)
推荐(0)
摘要:
在移动端html中经常出现横向/纵向滚动的效果,但是在iPhone中滚动速度很慢,感觉不流畅,有种卡卡的感觉,但是在安卓设备上没有这种感觉; 要解决这个问题很简单: 一行代码搞定 -webkit-overflow-scrolling : touch;
阅读全文
posted @ 2016-08-31 22:06
{前端开发}
阅读(3647)
推荐(1)
摘要:
http://ayqy.net/blog/flexbox布局的兼容性/ 写在前面 flex布局早在2009年就有了,而现在是2015年6月8日,使用最新的flex语法会发现支持程度并不好,即使是在“高端”浏览器上也是如此,比如Chrome、Firefox、Safari、Android、IOS Saf
阅读全文
posted @ 2016-08-31 17:10
{前端开发}
阅读(389)
推荐(0)
摘要:
原文链接:http://caibaojian.com/mobile-knowledge.html meta基础知识 H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 忽略将页面中的数字识别为电话号码 忽略Android平台中对邮箱地址的识别 当网站添加到主屏幕快速启动方式,可隐藏地址栏,仅针对io
阅读全文
posted @ 2016-08-29 15:49
{前端开发}
阅读(470)
推荐(0)