月份:2016年6月

Sublime Text 3 配置和使用方法

下载: Sublime Text 3 官方下载地址 Sublime Text 3 汉化破解版 资料: Sublime Text 非官方文档   技巧 -用户或-User后缀的菜单项,其对应的配置文件都保存在Packages\User文件夹下,将它们上传到Github,便于同步。 个人最常用的快捷键 快捷键完整版见后文,这里只列个人习惯。 四种 Goto… Read More

HTML5对比HTML4带来的新变化

HTML5入门 HTML5是HTML的最新版本,目标是更好地开发网络应用程序。 HTML5比HTML4拥有更简洁的语法并且提供了更多新的特性。 本文将对HTML5做一个大体的介绍。 HTML5能做什么? 1. 离线存储 HTML5可以让你的WEB应用程序离线也能运行,它提供了一个称作“应用程序缓存”的离线存储功能,因此即使当用户离线,浏览器仍然能够访问到它所需的文件。 这些文件可以是HTML,CSS,Javascript 或者其它任何网页运行所需要的文件。 2.拖拽功能 HTML5提供了可以用来设计交互应用程序的本地拖拽功能,通过这个特性你可以拖动任何元素然后把它放到你想放到地方。 3.地理位置定位技术 HTML5的地理位置定位API可以让你与所信任的网站分享你当前的位置信息,当然,隐私问题是这一特性所主要考虑的,W3.org声明: 浏览器在没有用户许可的情况下不允许私自向网站发送用户的地理位置信息。 比 如一位用户使用Firefox浏览器访问了一个实现地理位置定位技术的网页,浏览器会向用户询问是否共享他的地理位置信息,如果用户同意,Firefox 会收集附近无线接入点和访问者IP地址信息,并把这些信息发送到默认设定的Google地理位置服务,处理之后的位置信息将会发送给用户访问的这个网站。 4.音频和视频 当前的HTML缺少在页面中嵌入多媒体文件的特性,因此多媒体文件的嵌入需要使用各种的插件。… Read More

Node.js 模块之Nimble流程控制

NodeJS异步的特性有时候会导致程序非常的难看,回调一层套着一层,这个时候就要用流程控制模块来控制究竟是同步还是异步了。 Nimble是一个轻量、可移植的函数式流程控制模块。经过最小化和压缩后只有837字节,可以运行在Node.js中,也可以用在各种浏览器中。它整合了underscore和async一些最实用的功能,并且API更简单。 nimble有两个流程控制函数,_.parallel和_.series。顾名思义,我们要用的是第二个,可以让一组函数串行执行的_.series。下面这个命令是用来安装Nimble的: npm install nimble 如果用.series调度执行上面那个解方程的函数,代码应该是这样的: ... var flow = require('nimble'); (function calculate(i) { if(i === l-1) { variables[i]… Read More

Node.js web应用模块之Supervisor

在开发或调试Node.js应用程序的时候,当你修改js文件后,总是要按下CTRL+C终止程序,然后再重新启动,即使是修改一点小小的参数,也 总是要不断地重复这几个很烦人的操作。这是因为Node.js 只有在第一次引用到某部份时才会去解析脚 本文件,以后都会直接访问内存,避免重复载入。 Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。 有没有办法做到当文件修改之后,Node.js自动重新启动(或重新加载文件)以节省时间呢?一开始我是想到用 grunt的watch模块来监控文件变化,但后来在网上一查,原来我们想到的,别人早已想到,并且已经做得很好。Node Supervisor正是这样一个可以实现这种需求的Node.js模块。 supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启Node.js。 根据Github上的说明,Node Supervisor原本是用于服务器上Node.js应用崩溃的时候,自己重新启动。当然它也可以监控你的项目的js(或CoffeeScript)文 件变化,进而重启来方便我们调试应用程序。 安装方法(以全局模块安装): 代码如下 npm install supervisor -g 如果你使用的是Linux… Read More

Node.js web应用模块之forever

javascript 一统江湖的势头越来越猛,越来越重的前端,不得不实施前后端分离,angular.js 成功把前端javascript抽象成了一个复杂的MVC框架,注意,它是一个框架,可不是普普通通的插件,或者工具包. 另一位兄弟则是跳出浏览器宿主的限制,活跃在了服务器端,大名鼎鼎的 node.js 还有一位齐头并进的好哥们 mongodb ,它不仅让你使用熟悉的javascript范围数据库,而且还自己实现了javascript引擎. 可能创建 javascript 语言的大牛,看到今天js的发展事态,想必脊梁骨也是阵阵发凉. 我们好像扯远了,开题先痛痛快快意淫一把怎能善罢甘休,O(∩_∩)O~ 由于node.js的异步IO,事件轮询等优点,越来越多的web服务在node.js 环境下运行起来,而且node.js 用几句简单的代码自己实现了一个服务器,牛掰大气上档次,可惜就是不能碰到错误,否则就挂.哈哈哈 可见再牛掰的 node.js ,运行在单进程上,一个错误还真有点受不了,所以我们需要一个持续的,稳定的,能重复启动,简单的命令控制,完善的log日志,甚至群集功能 (我不是在做梦吧^_^) forever… Read More

Node.js GET/POST请求

在很多场景中,我们的服务器都需要跟用户的浏览器打交道,如表单提交。 表单提交到服务器一般都使用GET/POST请求。 本章节我们将为大家介绍 Node.js GET/POST请求。 获取GET请求内容 由于GET请求直接被嵌入在路径中,URL是完整的请求路径,包括了?后面的部分,因此你可以手动解析后面的内容作为GET请求的参数。 node.js中url模块中的parse函数提供了这个功能。 var http = require('http'); var url = require('url'); var util = require('util');… Read More

Node.js: NPM 使用介绍

NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用。 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。 由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以通过输入 “npm -v” 来测试是否成功安装。命令如下,出现版本提示表示安装成功: $ npm -v 2.3.0 如果你安装的是旧版本的 npm,可以很容易得通过 npm 命令来升级,命令如下: $ sudo npm install… Read More

Node.js Domain 模块

Node.js 工具模块 Node.js Domain(域) 简化异步代码的异常处理,可以捕捉处理try catch无法捕捉的异常。引入 Domain 模块 语法格式如下: var domain = require("domain") domain模块,把处理多个不同的IO的操作作为一个组。注册事件和回调到domain,当发生一个错误事件或抛出一个错误时,domain对象 会被通知,不会丢失上下文环境,也不导致程序错误立即推出,与process.on(‘uncaughtException’)不同。 Domain 模块可分为隐式绑定和显式绑定: 隐式绑定: 把在domain上下文中定义的变量,自动绑定到domain对象 显式绑定:… Read More

Node.js Net 模块

Node.js 工具模块 Node.js Net 模块提供了一些用于底层的网络通信的小工具,包含了创建服务器/客户端的方法,我们可以通过以下方式引入该模块: var net = require("net") 方法 序号 方法 & 描述 1 net.createServer([options][, connectionListener]) 创建一个 TCP 服务器。参数… Read More

Node.js 工具模块

在 Node.js 模块库中有很多好用的模块。接下来我们为大家介绍几种常用模块的使用: 序号 模块名 & 描述 1 OS 模块 提供基本的系统操作函数。 2 Path 模块 提供了处理和转换文件路的工具。 3 Net 模块 用于底层的网络通信。提供了服务端和客户端的的操作。 4… Read More