es6---desctructing

2016-09-01
阅读 3 分钟
2.3k
Object desctructing {代码...} Array desctructing 数组结构适用于具有Iterator接口的数据: {代码...} 哪里可以用到解构赋值? {代码...} 还可以在for-of的循环过程中使用 {代码...} 背景:构造数据和解析数据 js通过一些操作来新建一个对象 {代码...} 同时通过其他的一些操作来解析这个数据 {代码...} 我们可以通过对...

es6--let和const

2016-08-31
阅读 3 分钟
2.3k
let和const 标签(空格分隔): es6 let命令 这个命令是用来申明变量的,但是和es5不同的是,用它来声明的变量是局部变量,存在于局部作用域(blocked scope): {代码...} 此外,在写es5的时候经常会遇到变量提升的情况,比如: {代码...} 即,如果使用let进行变量申明的话,一定要先申明再使用 const命令 声明一个immutab...

express 的 middleware 设计

2016-08-23
阅读 7 分钟
3.2k
还没用express写过server,先把部分源码撸了一遍,各位大神求轻拍。 express入口文件在lib文件夹下的express.js,其向外界暴露了一些方法。 最主要的(express.js 第36-47行): {代码...} 我们经常在自己的业务代码中这样写: {代码...} 其实就是调用createApplication方法.这样就实例化了一个app。这个app比较特殊,通过mi...

webpack-dev-server使用方法,看完还不会的来找我~

2016-08-21
阅读 7 分钟
142.4k
配置文件提供一个入口和一个出口,webpack根据这个来进行js的打包和编译工作。虽然webpack提供了webpack --watch的命令来动态监听文件的改变并实时打包,输出新bundle.js文件,这样文件多了之后打包速度会很慢,此外这样的打包的方式不能做到hot replace,即每次webpack编译之后,你还需要手动刷新浏览器。

Git--从入门到干活

2016-08-16
阅读 3 分钟
5k
当你进入一个团队开发时,或许这个团队使用的是基于Git的迭代开发。 Git的安装这里就不说了,主要讲讲几种基于Git的常用的开发模式。 一般我喜欢会设置Git的alias,这样每次输入命令的时候可以少打些字母,同时还能减少拼写的错误。例如: {代码...} 当团队成员给你一个git仓库地址后,并赋予你developer access权限后,...

Node.js深入浅出第三章学习笔记

2016-08-12
阅读 2 分钟
2.6k
在我们写前端代码的时候,经常会遇到的异步的一些操作,比如ajax,setTimeout,浏览器事件等,虽然js执行是单线程的,但是浏览器却是有多个线程的,例如发起ajax请求,浏览器会另起一个http线程。Node类似,js执行为单线程,但是遇到一些I/O操作,提供了异步的方式。

移动端H5图片上传的那些坑

2016-08-02
阅读 3 分钟
75.7k
上周做一个关于移动端图片压缩上传的功能。期间踩了几个坑,在此总结下。 大体的思路是,部分API的兼容性请参照caniuse: 利用FileReader,读取blob对象,或者是file对象,将图片转化为data uri的形式。 使用canvas,在页面上新建一个画布,利用canvas提供的API,将图片画入这个画布当中。 利用canvas.toDataURL(),进行图片...

visual viewport和layout viewport

2016-07-25
阅读 3 分钟
7.3k
物理像素:买手机的时候会有一个 n x m 的分辨率,那是屏幕的n x m个呈像的点,一个点(小方格)为一个物理像素。它是屏幕能显示的最小粒度.

Form表单和Iframe实现文件上传,页面不跳转

2016-07-10
阅读 4 分钟
8k
Form表单是不存在浏览器的兼容性的,同时在js被禁用的情况下也能进行文件的传输,因此可以大胆使用。Form表单提交不同于Ajax,Ajax提交数据还需要利用脚本进行数据的处理,而Form是不需要进行任何数据处理的。

ngModel使用说明小demo

2016-05-21
阅读 5 分钟
4.3k
第一个点,要了解下: DOM value $viewValue $modelValue scope上挂载的属性的值 一般有2个流程: $viewValue -->> $modelValue -->> scope 上挂载的属性的值 scope上挂载的属性的值 -->> $modelValue -->> $viewValue ngModel常用的场景就是如果你使用第三方的插件例如时间插件,每...

FlexBox弹性盒子计算规则

2016-04-25
阅读 3 分钟
6.1k
和FlexBox弹性盒子计算规则相关的属性有: margin flex-basis flex-grow flex-shrink margin Flex容器每一行的宽度 = 每个子容器的宽度 + 子容器margin-left和margin-right的值 {代码...} 总width(400px) = 总margin(100px) + 每个item的宽度; 由于flex-basis属性值为0,剩余空间为400px,则各个子盒子会根据自身的flex-...

JS 逻辑操作符 && 和 || 用法

2016-04-20
阅读 2 分钟
3.1k
其中第一题,因为found为true,则接下来要对someUndefinedVariable这个变量求值,但是未定义,因此会报错,第二题found为false,则接下来要对someUndefinedVariable这个变量求值,同样未定义,也会报错。第三题输出2,第四题输出0;

build your promise step by step

2016-04-10
阅读 6 分钟
3.4k
最近看了一篇关于Promise内部实现原理的文章Javascript in wicked detail。作者从简明的例子入手,一步一步的构建健壮的Promise实现。我就拿作者文中的代码实例梳理下文章的核心内容。

浏览器缓存碎碎念

2016-04-05
阅读 3 分钟
2.6k
浏览器缓存技术是提升前端性能一个非常重要的手段。在当前浏览器各方面性能都大幅提升的情况下,前端性能的瓶颈更多的集中在资源请求方面。 原理 说浏览器缓存,其实就是在说: 浏览器实现缓存的机制 HTTP通讯协议定义的关于缓存的字段内容 先让我们回顾下,当我们在浏览器的地址栏输入URL之后发生哪些过程: DNS服务器...

ng的缓存模板的用法

2016-02-22
阅读 3 分钟
4.1k
<script type="text/ng-template" id="templateId.html"></script>

广告前后端流程

2016-02-01
阅读 1 分钟
4.9k
采用了基于像素的计算方法来记录在发布商上投放的广告展示次数。当某个广告完全展示的时候,一个1x1的像素请求会被发送到我们的ad server上,那么这次的展示就会被记录。即广告的展示计数是通过这个1x1像素图发送请求次数作为展示的数量。如果是ad serving的话,那就是server上广告物料被请求的次数。一些第三方的广告服...

野蛮生长的痛(一个伪前端的2015总结)

2016-01-31
阅读 5 分钟
5.7k
还真没想到我现在正从事着我在大学里面最为惧怕的一项工作:编程。之前听同学说编程好难啊,整天对着黑白屏都看傻了,又或者听同学讲他某某的亲戚因为编程的工作强度太大,每天都没时间吃正餐,只能吃方便面,一个月后被发现死在了自己的卧室里面。种种的道听途说让我觉得编程是一项我以后碰都不想碰的工作。

Controller As in Angularjs

2015-12-18
阅读 8 分钟
5k
在js部分书写控制器的时候,更像是在写构造函数,然后在view层实例化一个ViewModule。那么在view里面可以直接调用挂载在这个vm上的属性和方法。这样的写法的好处就是避免在嵌套的controller里面使用$parent去获取父controller里面的方法或值。因为在angular里面scope是基于原型进行继承的。

vue初探--编写表格组件

2015-12-15
阅读 3 分钟
13.7k
然后在这个小demo里面涉及到了vue的个别指令: v-for v-model v-bind等。还有父组件和子组建的数据共享,过滤器等功能。

scope in Angularjs

2015-11-27
阅读 4 分钟
3.3k
当页面一开始加载完毕之后,通过在parent的input里面输入内容的时候,在child的input里面也会发生响应。这个时候,subController里的info的值,是继承parent里面的mainController的值。

没有flexbox弹性盒子,但我们还有table

2015-11-10
阅读 3 分钟
5.5k
由于项目要兼容到IE9,因此将之前flex布局全部给换掉。今天leader让我看了kitecss这个css框架(里面的一些布局方式能比较好的兼容IE8+,里面有一些比较好的栅格布局,垂直居中等方案)。然后具体的学习了里面的一些css技巧和方法,总结如下:

同步与异步、异步与回调

2015-11-06
阅读 2 分钟
15.6k
首先执行函数a,而且不等setTimeout执行就执行函数c,等待至少1s的时候后才会执行函数b.实际上在是等待了1s后将函数b放到了event queue里面,此时要等待主线程空闲的时候,才会取event queue里面等待的回调函数进行执行。

table-cell布局

2015-10-29
阅读 2 分钟
6.2k
css2.1表格模型中的元素,可能不会全部包含在除HTML之外的文档语言中。这时,那些'丢失'的元素会被模拟出来,从而使得表格模型能够正常工作。所有的表格元素将会自动在自身周围生成所需的匿名table对象,使其符合table/inline-table、table-row、table-cell的三层嵌套关系。

前端构建工具grunt学习笔记

2015-10-04
阅读 2 分钟
3.8k
使用grunt实时编译less文件 下图是项目的文件组织 生成package.json文件,通过npm init命令。 安装你需要的Devdependencies/denpendencies。 npm install grunt --save-dev npm install load-grunt-tasks --save-dev npm install time-grunt --save-dev npm install grunt-contrib-watch --save-dev npm install grunt-c...

Angular学习笔记($filter)

2015-10-03
阅读 2 分钟
4.1k
AngularJS 里面的过滤器就是一个函数,它的作用就是将输入的数据经过格式化后再输出给user Angular内置指令 在HTML的模板中使用 | 符号来调用过滤器。 {代码...} 在Controller里面调用内置过滤器$filter {代码...} Angular自定义指令 {代码...} 向指令里传递参数 使用 : 来隔开每个参数 {代码...} 过滤器优化 位于视图中...

AngularJS学习笔记一(RequireJS + AngularJS)

2015-09-30
阅读 2 分钟
6k
因为使用RequireJS去加载整个项目JS文件,因此直接将AngularJS文件引入到项目文件当中是不合理的,所有必须使用RequireJS提供的方式去加载AngularJS。

javascript作用域链详解

2015-08-21
阅读 4 分钟
2.8k
文章部分实例和内容来自鸟哥的blogJavascript作用域原理 首先应该注意几个点: 函数也是对象 variable object(VO) A variable object is a container of data associated with the execution context. It’s a special object that stores variables and function declarations defined in the context. {代码...} Activa...

JS 中 this 关键字详解

2015-08-03
阅读 6 分钟
19.1k
本文主要解释在JS里面this关键字的指向问题(在浏览器环境下)。 首先,必须搞清楚在JS里面,函数的几种调用方式: 普通函数调用 作为方法来调用 作为构造函数来调用 使用apply/call方法来调用 Function.prototype.bind方法 es6箭头函数 但是不管函数是按哪种方法来调用的,请记住一点:谁调用这个函数或方法,this关键字就...

闭包里的微观世界

2015-07-26
阅读 3 分钟
4.4k
本文旨在解释闭包里的微观世界。 内容包含:值类型、作用域、闭包 JS当中所有的function都是闭包,一般说来,嵌套的function的闭包性更强。这也是我们平时接触和研究比较多的地方。 在进入本文的核心部分以前,首先来理解几个概念: 值类型 声明一个值类型变量,编译器会在栈上分配一个空间,这个空间对应着该值的类型变...

constructor, prototype, __proto__ 详解

2015-07-25
阅读 5 分钟
14.9k
本文为了解决以下问题: __proto__(实际原型)和prototype(原型属性)不一样!!! constructor属性(原型对象中包含这个属性,实例当中也同样会继承这个属性) prototype属性(constructor.prototype原型对象) __proto__属性(实例指向原型对象的指针) 首先弄清楚几个概念: 什么是对象 若干属性的集合 什么是原型? 原型是一...