一起学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 · 2614 阅读 · 0 评论 -
Node.js学习(14)----EJS模板引擎
这个入门教程将从以下几个方面来讲解:1. 引入EJS2. 创建一个模板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 · 16453 阅读 · 1 评论 -
Node.js学习(13)----Jade模板引擎
Jade是一款高性能简洁易懂的模板引擎,Jade是Haml的Javascript实现,在服务端(NodeJS)及客户端均有支持。 功能 客户端支持 超强的可读性 灵活易用的缩进 块扩展 代码默认经过编码处理以增强安全性 编译及运行时的上下文错误报告 命令行编译支持 HTML5模式(使用!!!5文档类型) 可选的内存缓存 联合动态和静态标记类 利用过滤器解析树的处理。Jade是一款高性能简洁易懂的模板引擎,Jade是Haml的Javascript实现,在服务端(NodeJS)及客户端均有支持。原创 2013-10-09 09:31:15 · 4286 阅读 · 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 · 2534 阅读 · 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 · 21648 阅读 · 0 评论 -
Node.js学习(10)----文件系统fs
fs 模块是文件操作的封装,它提供了文件的读取、写入、更名、删除、遍历目录、链接等 POSIX 文件系统操作。与其他模块不同的是,fs 模块中所有的操作都提供了异步的和同步的两个版本, 例如读取文件内容的函数有异步的 fs.readFile() 和同步的fs.readFileSync()。1、fs.readFilefs.readFile(filename,[encoding],[callback(err,data)])是最简单的读取文件的函数。它接受一个必选参数 filename,表示要读取的文件名。第原创 2013-10-08 14:22:32 · 12626 阅读 · 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 · 5183 阅读 · 0 评论 -
Node.js学习(8)----调试
写程序免不了遇到bug,而当bug发生后,我们最常用的方式就是单步调试。Node.js的调试功能正是由V8提供的,保持了一贯的高效和方便。1、命令行调试Node.js支持命令行下的单步调试。debug.jsvar 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 · 3422 阅读 · 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 · 3715 阅读 · 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 · 1842 阅读 · 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 · 2072 阅读 · 0 评论 -
Node.js学习(4)----Node模块
开始编写Node应用之前,必须先学会Node的模块和包。模块和包是组成应用的基本单位。例如:simple.jsvar 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 · 2017 阅读 · 0 评论 -
Node.js学习(3)----Server实例
这里使用Node.js实现一个最简单的Web服务器。index.jsvar 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 · 2181 阅读 · 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 · 1531 阅读 · 0 评论 -
Node.js学习(1)----入门
Node.js的是javascript的服务器版本。1、首先安装Node.js2、Hello World的实例新建helloword.js文件写入如下代码:console.log("Hello World!");3、windows环境下:运行-->cmd-->node helloworld.js显示:Hello World!原创 2013-09-17 15:24:25 · 2723 阅读 · 0 评论