var

JavaScript简易排序算法及简易优化

JavaScript简易排序算法及简易优化快速排序原理:在待排序序列中选一个分割元素,将待排序序列分隔成独立的子序列,子序列1里的元素比分割元素元素都小(大),子序列2反之,递归进行此操作,以达到子序列都有序。最后将子序列用concat方法连接起来即是排序好的序列。function quickSort(arr){ if(arr.length tmp){

JavaScript设计模式----职责链模式

声明:这个系列为阅读《JavaScript设计模式与开发实践》 ----曾探@著一书的读书笔记1.职责链模式的定义2.1 简单职责链模式2.2职责链重构上面的代码2.3灵活的拆分职责链节点3.异步职责链4.职责链模式的优缺点:5.使用AOP(面向切面编程)来快速的创建职责链总结:1.职责链模式的定义使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,将这

「译」Node.js Streams 基础

Node.js 天生异步和事件驱动,非常适合处理 I/O 相关的任务。如果你在处理应用中 I/O 相关的操作,你可以利用 Node.js 中的流(stream)。因此,我们先具体看看流,理解一下它们是怎么简化 I/O 操作的吧。流是什么流是 unix 管道,让你可以很容易地从数据源读取数据,然后流向另一个目的地。简单来说,流不是什么特别的东西,它只是一个实现了一些方法的 E

阿里云服务器增加SWAP

其实只需要执行两个个命令就好了: mkswap /var/swap swapon /var/swap 然后这样的话,是不能实现重新开机还会存在的: 这个时候,我们需要这样办: 编辑/etc/fstab vim /etc/fstab 在最后加上最后这句话: /var/swap swap swap defa

nodejs爬虫项目实战

这篇文章主要介绍了NodeJS制作爬虫的全过程,包括项目建立,目标网站分析、使用superagent获取源数据、使用cheerio解析、使用eventproxy来并发抓取每个主题的内容等方面,有需要的小伙伴参考下吧。一、 依赖1. DOM操作 cheerio2. 请求插件 request3. http库 superagent4. 代理 eventproxy二、建立项

JavaScript 处理数组函数总结

JavaScript的array可以包含任意数据类型,并通过索引来访问每个元素。1、获取数组长度直接访问length属性获取数组长度:var arr = [1,'hihi',3.14,null,true];arr.length;//5注意:直接给Array的length赋一个新的值会导致Array大小的变化:var arr = [1,2,3];arr.length;//3a

常用js设计模式整理

在做canvas、webGL游戏时,很深切的感觉到,游戏编程玩的都是设计模式。架构没预先设计好,强耦合性代码在后期维护简直灾难。大型单页应用里,复杂度上升到一定程度时,没有适当的设计模式进行降耦,后续的开发也难以下手。而设计模式正是为了降耦而存在。参考《javascript设计模式》——曾探函数节流var throttle = function(fn, interval){

JavaScript设计模式----单例模式

声明:这个系列为阅读《JavaScript设计模式与开发实践》 ----曾探@著一书的读书笔记1.单例模式的特点和定义保证一个类仅有一个实例,并且提供一个访问它的全局访问点。2.传统面向对象语言的单例模式2.1传统语言描述的单例模式JavaScript实现var Singleton = function(name) {this.name = name;this.instan

Mongoose

mongoose简介是一个将JavaScript对象与数据库产生关系的一个框架,Object related model。操作对象,就是操作数据库了。对象产生了,同时也持久化(数据进入数据库)了。初步使用mongoose连接数据库var mongoose = require('mongoose');//创建数据库连接var db = mongoose.createConne