一群恶魔的猪从无辜的小鸟那里偷走了所有的前端架构,现在它们要夺回来。一对特工英雄(愤怒的小鸟)将攻击那些卑鄙的猪,直到夺回属于他们的前端架构。(译者注:本系列是关乎前端架构的讨论,作者借用当前最风靡的游戏 - 愤怒的小鸟,为我们揭开了前端架构的真实面目。)
小鸟们最终能取得胜利吗?它们会战胜那些满身培根味的敌人吗?让我们一起来揭示 JavaScript 之愤怒的小鸟系列的另一个扣人心弦的章节!
阅读本系列的介绍文章,查看所有小鸟以及它们的进攻力量。
战况
红色大鸟 - 立即调用的函数表达式
蓝色小鸟 - 事件
黄色小鸟 - 模块化、依赖管理、性能优化
黑色小鸟 - 前端分层架构
白色小鸟 - 代码质量和代码分析
绿色小鸟 -
继续阅读 »
在程序界的远古时期,大神们手持键盘敲着机器语言跟庞大的机器打着交道,那时候机器语言还没有语义和语法,更没有封装的概念。后来进化到汇编语言,C语言时期,基础的功能特性就已经能满足当时的需求了,比如函数封装使其得于复用,但随着计算机的普及,操作系统的到来,面向过程语言已无法继续满足复杂的需求。
继续阅读 »
如何遍历一个数组的元素?在 20 年前,当 JavaScript 出现时,你也许会这样做:
javascript
for (var index = 0; index < myArray.length; index++) {
console.log(myArray[index]);
}
自从 ES5 开始,你可以使用内置的 forEach 方法:
javascript
myArray.forEach(function (value) {
console.log(value);
});
代码更为精简,但有一个小缺点:不能使用 break 语句来跳出循环,也不能使用 return 语句来从闭包函数中返回。
如果有 for
继续阅读 »
序
本文适合使用过 fiddler 、对它有所了解的朋友阅读。
以下内容基于:
操作系统:windows 10
fiddler 版本:v4.6
解决跨域问题
通用情况
用 fiddler 解决跨域问题的原理是通过规则来设置响应头的相应字段。
在 fiddler 右侧的 "详情和数据统计面板" 中找到 FiddlerScript 标签页,里面是一个脚本文件,语法有点像 typeScript ,不难看懂,里面只定义了一个 Handlers 类,可以通过它来编辑 fiddler 菜单栏中的 Rules 选项以及 fiddler 处理请求的回调函数。
继续阅读 »
/**
* 【数据结构类】一种计算机,其有如下原子功能:
* 1.赋值
* 2.+1操作 ++a;a+1;
* 3.循环,但是只支持按次数的循环for(变量名)(循环里面对变量的修改不影响 循环次数)
* 4.只能处理0和正整数
* 5.函数调用 fun(参数列表)
* 在这个计算机上编程实现变量的加法减法,乘法
**/
//add operation
fun_add(a,b)
{
for(b)
++a;
return a;
}
//redu
继续阅读 »
一群恶魔的猪从无辜的小鸟那里偷走了所有的前端架构,现在它们要夺回来。一对特工英雄(愤怒的小鸟)将攻击那些卑鄙的猪,直到夺回属于他们的前端架构。(译者注:本系列是关乎前端架构的讨论,作者借用当前最风靡的游戏 - 愤怒的小鸟,为我们揭开了前端架构的真实面目。)
小鸟们最终能取得胜利吗?它们会战胜那些满身培根味的敌人吗?让我们一起来揭示 JavaScript 之愤怒的小鸟系列的另一个扣人心弦的章节!
阅读本系列的介绍文章,查看所有小鸟以及它们的进攻力量。
战况
红色大鸟 - 立即调用的函数表达式
蓝色小鸟 - 事件
黄色小鸟 - 模块化、依赖管理、性能优化
黑色小鸟 - 前端分层架构
白色小鸟 - 代码质量和代码分析
绿色小鸟 -
继续阅读 »
随着公司的业务的发展有幸接触到OpenCV 这个图形库,这篇文章主要是总结一下在Mac 上使用OpenCV做一个动态的广告植入。
OpenCV 是什么:
OpenCV的全称是:Open Source Computer Vision Library。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。
继续阅读 »
开发安卓APP的过程中,肯定有不少人遇见过 Activity Not Found 错误和 Activity State Loss 错误,前者是由于启动的目标 intent 对应的 activity 不存在,后者则是由于在 activity onSaveInstanceState 函数被调用之后进行了 fragment transaction,关于后者有一篇文章{:target="_blank"}总结得非常到位,这一篇译文{:target="_blank"}翻译得也还不错,建议看看。本文则主要介绍我的一个开源库 SafelyAndroid{:target="_blank"},其中整合了解决这两类问题的最佳实践,让我们一起利用它打造鲁棒
继续阅读 »
声明
文中的 promisify 函数原型出自 月影 的这篇博客。
了解Promise
继续阅读 »
事件处理
React中的事件处理方式与HTML方式类似,都是通过为标签添加属性来声明事件处理函数。如下所示:
```javascript
var LikeButton = React.createClass({
getInitialState: function(){
return {like: true};
},
handleClick: function(){
this.setState({like: !this.state.like});
},
render: function(){
return (
继续阅读 »