自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (4)
  • 收藏
  • 关注

原创 nodejs异步控制

回调函数nodejs约定将异常作为回调函数的第一个实参传回,如果为null,则表明异步调用没有异常。const fs = require("fs");fs.readFile("file1", function(err, result){ if(err) throw err; console.log(result.toString("utf-8"));});事件发布/订阅nodejs自身提

2016-04-19 08:29:40 552

原创 nodejs的express源码阅读

尾触发与Next除了事件和Promise外,还有一种方法时需要手动调用才能持续执行后续调用,我们将此类方法叫做尾触发,常见的关键字是next. 尾触发目前应用最多的地方是Connect的中间件。function (req, res, next){ //}每个中间件传递请求对象、响应对象和尾触发函数,通过队列形成一个事件流。module.exports = createServer;funct

2016-04-19 08:28:13 631

原创 es6函数的扩展

1.rest参数ES6引入rest参数(形式为“…变量名”),用于获取函数的多余参数,这样就不需要使用arguments对象了。 arguments对象并没有数组的方法,rest参数搭配的变量是一个数组。function add(...values){ let sum = 0; for(let val of values){ sum += val; } return sum

2016-04-17 23:44:47 591

原创 es6的Generator函数

摘自Generator 函数Generator函数是协程在ES6的实现,最大特点就是可以交出函数的执行权(即暂停执行)。整个Generator函数就是一个封装的异步任务,或者说是异步任务的容器。异步操作需要暂停的地方,都用yield语句注明。 Generator函数有多种理解角度。从语法上,首先可以把它理解成,Generator函数是一个状态机,封装了多个内部状态。function* helloW

2016-04-17 17:36:31 546

原创 js继承

当一个函数对象被创建时,Function构造器产生的函数对象会运行类似这样的一段代码this.prototype = {constructor:this};constructor属性没什么用,重要的是prototype对象. 当采用构造器调用模式,即用new去调用一个函数时,函数执行方式会被修改.Function.method("new",function(){ //创建一个新对象,它继承构造

2016-04-15 08:20:29 431

原创 node模块机制

CommonJS模块规范CommonJS对模块的定义十分简单,主要分为模块引用,模块定义和模块标识3个部分.模块引用var math = require("math");模块定义在模块中,上下文提供require()方法来引入外部模块.一个module对象,它代表模块本身,而exports是module的属性var exports = module.exports = {}function add

2016-04-12 00:56:48 474

原创 js的defineProperty方法

function defineGetter(obj, name, getter) { Object.defineProperty(obj, name, { configurable: true, enumerable: true, get: getter });};在express中看到defineProperty的使用,es5可以通过Object.definePr

2016-04-11 23:40:50 7050 1

原创 js创建对象

javascript是基于原型继承的,允许对象继承另一个对象的属性.正确的使用它能减少对象初始化时消耗的时间和内存.引用js中对象通过引用来传递.通过=操作符赋值时它们永远不会被复制.var a = {}, b = {}, c = {};//a,b和c每个都引用一个不同的空对象a = b = c = {};//a,b和c都引用同一个对象1.创建对象1.1对象字面量对象字面量提供了一种非常方便

2016-04-10 20:03:36 434

原创 js高阶函数

在通常的编程语言中,函数的参数只能是基本类型或者对象引用,返回值也只是基本数据类型或对象引用。但在Javascript中函数作为一等公民,既可以当做参数传递,也可以被当做返回值返回。 所谓高阶函数就是可以把函数作为参数,或者是将函数作为返回值的函数。回调函数代码复用是衡量一个应用程序的重要标准之一。通过将变化的业务逻辑抽离封装在回调函数中能够有效的提高代码复用率。 比如ES5中为数组增加的for

2016-04-10 17:51:41 855

原创 js闭包

闭包(Closure)闭包是JavaScript一个非常重要的特性,这意味着当前作用域总是能够访问外部作用域中的变量. 因为函数是JavaScript中唯一拥有自身作用域的结构,因此闭包的创建依赖于函数. 作用域的好处是内部函数可以访问定义它们的外部函数的参数和变量(除了this和arguments).var myObject = { value:0, increment:functio

2016-04-10 17:50:51 310

原创 js函数调用方式

函数对象javascript中函数就是对象.对象是键值对的集合并拥有一个连接到原型对象的隐藏连接. 对象字面量产生的对象连接到Object.prototype.函数对象连接到Function.prototype调用除了声明时定义的形式参数,每个函数还接收两个附加的参数:this和arguments. this在面向对象编程中非常重要,它的值取决于调用的模式.在javascript中一共有4种调用

2016-04-10 17:50:02 568

原创 js原型链

对象javascript中的简单数据类型包括数字,字符串,布尔值(true和false),null值和undefined值.其他所有的值都是对象. 每一个对象都连接到一个原型对象prototype,并且它可以从中继承属性.让我们看一个关于对象的基本例子。一个对象的prototype是以内部的[[Prototype]]属性来引用的。 但是,在示意图里边我们将会使用__<internal-prope

2016-04-10 17:48:59 328

原创 js作用域Scope

作用域Scope在编程语言中,作用域控制着变量和参数的可见性及生命周期. 对于程序员来说这是一项重要的服务,因为它减少了名称冲突,并且提供了自动内存管理.var foo = function(){ var a = 3, b = 5; var bar = function(){ var b = 7, c = 11; //此时 a为3,b为7,c为11 a += b +

2016-04-10 17:45:05 402

原创 当Gerrit的Cubmit类型为cherry pick时的工作方式

Fast Forward Only意味着submit一个检视后,同一个目的分支的其他open状态的检视需要rebase操作. 没有合并提交产生,所有的合并都必须在客户端完成后再上传到Gerrit,在实践中对于检视比较少的项目比较合适. Merge If Necessary这是创建新项目的默认值.当检视不是fast-forwarded类型时,会创建一个合并提交. Cherry-pick在subm

2016-04-02 18:57:57 3121

我的第一本算法书高清版.rar

《我的第一本算法书》采用大量图片,通过详细的分步讲解,以直观、易懂的方式展现了7个数据结构和 26个基础算法的基本原理。优秀资源需要共享。

2019-06-03

gerrit-2.12.war

gerrit-2.12.war 方便不能访问google的用户

2016-01-24

memcached源码

memcached是一个内存数据库,适合用作cache。

2014-12-27

Dev-C++ (gcc4.8.1)

包含gcc4.8.3,全面支持C++11,包括thread,mutex....等

2014-12-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除