
一起学Node.js
Node.js是一套用来编写高性能网络服务器的JavaScript工具包,有了Node.js从此WEB开发不适难事,服务器搭建不适难事。
SANZ1991
莫听穿林打叶声,何妨吟啸且徐行。
竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Node.js学习(15)----Express 3.x和Express 2.x区别
Node.js中Express框架变化还是挺大的。 学习一个还未成熟的技术还是有很大风险的,但也具有挑战。 Express 2.x过渡到Express 3.x原创 2013-10-10 23:06:39 · 2647 阅读 · 0 评论 -
Node.js学习(14)----EJS模板引擎
这个入门教程将从以下几个方面来讲解: 1. 引入EJS 2. 创建一个模板 3. 使用视图工具组件 4. 使用错误处理组件 5. 什么情况下应使用EJS 引入EJS 在我们正式开始前,我们先来做点准备工作。 你的页面需要引入EJS以使JavaScript能够使用它。 先到Google Code或者SVN库里下载ejs\_production.js文件。 下一步是在你的HTML文件里加入下面一段代码: <script type="text/javascript" src="ejs_prod原创 2013-10-09 16:50:29 · 16521 阅读 · 1 评论 -
Node.js学习(13)----Jade模板引擎
Jade是一款高性能简洁易懂的模板引擎,Jade是Haml的Javascript实现,在服务端(NodeJS)及客户端均有支持。 功能 客户端支持 超强的可读性 灵活易用的缩进 块扩展 代码默认经过编码处理以增强安全性 编译及运行时的上下文错误报告 命令行编译支持 HTML5模式(使用!!!5文档类型) 可选的内存缓存 联合动态和静态标记类 利用过滤器解析树的处理。 Jade是一款高性能简洁易懂的模板引擎,Jade是Haml的Javascript实现,在服务端(NodeJS)及客户端均有支持。原创 2013-10-09 09:31:15 · 4328 阅读 · 0 评论 -
Node.js学习(12)----Web应用开发
2、Express框架 npm 提供了大量的第三方模块,其中不乏许多 Web 框架,我们没有必要重复发明轮子,因而选择使用 Express 作为开发框架,因为它是目前最稳定、使用最广泛,而且 Node.js 官方推荐的唯一一个 Web 开发框架。 Express ( http://expressjs.com/ ) 除了为 http 模块提供了更高层的接口外,还实现了 许多功能,其中包括: 路由控制; 模板解析支持; 动态视图; 用户会话; CSRF 保护; 静态文件服务; 错误控原创 2013-10-08 20:03:26 · 2588 阅读 · 0 评论 -
Node.js学习(11)----HTTP服务器与客户端
Node.js 标准库提供了 http 模块,其中封装了一个高效的 HTTP 服务器和一个简易的HTTP 客户端。http.Server 是一个基于事件的 HTTP 服务器,它的核心由 Node.js 下层 C++部分实现,而接口由 JavaScript 封装,兼顾了高性能与简易性。http.request 则是一个HTTP 客户端工具,用于向 HTTP 服务器发起请求。 一、HTTP服务器 http.Server是http模块的HTTP服务器对象,用 Node.js 做的所有基于 HTTP 协议的系统,原创 2013-10-08 16:00:51 · 21733 阅读 · 0 评论 -
Node.js学习(10)----文件系统fs
fs 模块是文件操作的封装,它提供了文件的读取、写入、更名、删除、遍历目录、链接等 POSIX 文件系统操作。与其他模块不同的是,fs 模块中所有的操作都提供了异步的和同步的两个版本, 例如读取文件内容的函数有异步的 fs.readFile() 和同步的fs.readFileSync()。 1、fs.readFile fs.readFile(filename,[encoding],[callback(err,data)])是最简单的读取文件的函数。它接受一个必选参数 filename,表示要读取的文件名。第原创 2013-10-08 14:22:32 · 12707 阅读 · 0 评论 -
Node.js学习(9)----核心模块
核心模块是 Node.js 的心脏,它由一些精简而高效的库组成,为 Node.js 提供了基本的API。主要内容包括: 全局对象; 常用工具; 事件机制; 文件系统访问; HTTP 服务器与客户端。 1、全局对象 JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可以在程序的任何地方访问,即全局变量。在浏览器 JavaScript 中,通常 window 是全局对象,而 Node.js 中的全局对象是 global,所有全局变量(除了原创 2013-10-08 11:37:04 · 5249 阅读 · 0 评论 -
Node.js学习(8)----调试
写程序免不了遇到bug,而当bug发生后,我们最常用的方式就是单步调试。Node.js的调试功能正是由V8提供的,保持了一贯的高效和方便。 1、命令行调试 Node.js支持命令行下的单步调试。 debug.js var a=1; var b="world"; var c=function(x){ console.log('Hello '+x+a); }; c(b); 2、远程调试 V8提供的调试功能是基于TCP协议的,因此Node.js可以轻松地实现远程调试。在命令行输入一下两个语句之一可以打开调试原创 2013-10-08 09:58:25 · 3456 阅读 · 0 评论 -
Node.js学习(7)----包
包是在模块的基础上更深一步的抽象,Node.js的包类似于C/C++函数库或者Java/.NET的类库。它将独立的功能封装起来用于发布、更新、依赖管理和版本控制。 Node.js的包是一个目录,其中包含一个JSON格式的包说明文件package.json.这里必须在顶层目录下。为了提供兼容性,我们建议严格按照commonJS规范。 严格符合CommonJS规范的包应该具备以下特征: #1、package.json必须在包的顶层目录下。 #2、二进制文件必须在bin目录下。 #3、Javascript代码应该原创 2013-10-07 19:51:21 · 3752 阅读 · 0 评论 -
Node.js学习(6)----事件
Node.js所有的异步I/O操作在完成时都会发送一个事件到事件队列。在开发者看来,事件由EventEmitter对象提供。 /** * New node file */ var EventEmitter=require('events').EventEmitter; var event=new EventEmitter(); event.on('some_event',function(){ console.log('some_event occured.'); }); setTimeout(原创 2013-10-07 16:45:19 · 1877 阅读 · 0 评论 -
Node.js学习(5)----异步I/O和同步
异步I/O与事件式编程 1、异步的方式读取一个文件 /** * New node file * 异步方式读取数据 */ var fs=require('fs'); fs.readFile('README.md','utf-8',function(err,data)//读取文件函数 { if(err) { console.error(err); } else {原创 2013-10-07 16:27:06 · 2104 阅读 · 0 评论 -
Node.js学习(4)----Node模块
开始编写Node应用之前,必须先学会Node的模块和包。模块和包是组成应用的基本单位。 例如:simple.js var count=0; exports.next=function(){return count++;} 从require('./simple')返回的这个对象正是我们在simple.js中定义的exports。每一次对s.next()调用都是对simple.js里next函数的调用,然后next函数返回自增count变量值。 Node里有三种定义模块的方式: 相对路径定义方式(以 ./或者.原创 2013-10-07 14:49:44 · 2056 阅读 · 0 评论 -
Node.js学习(3)----Server实例
这里使用Node.js实现一个最简单的Web服务器。 index.js var http = require('http'); http.createServer(function(req,res){ res.writeHead(200,{'Content-Type':'text/plain'}); res.end('Hello Node.js\n'); }).listen(8080,"127.0.0.1"); console.log("Server start at http://127.0.0.1原创 2013-10-07 13:35:50 · 2217 阅读 · 0 评论 -
Node.js学习(2)----一些实例
1、仿Unix系统ls命令的功能 //仿制了Unix系统中的ls命令 var fs=require('fs'); var files=fs.readdirSync('.'); for(fn in files) { console.log(files[fn]); } 2、仿Unix系统ls命令功能的改进 //仿制了Unix系统中的ls命令 改进版 var fs=r原创 2013-09-22 11:20:45 · 1568 阅读 · 0 评论 -
Node.js学习(1)----入门
Node.js的是javascript的服务器版本。 1、首先安装Node.js 2、Hello World的实例 新建helloword.js文件写入如下代码: console.log("Hello World!"); 3、windows环境下:运行-->cmd-->node helloworld.js 显示:Hello World!原创 2013-09-17 15:24:25 · 2749 阅读 · 0 评论