Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Node分享 展烨

1,904 views

Published on

node js 入门,by展烨

  • Be the first to comment

Node分享 展烨

  1. 1. Node.Js 入门分享 展烨 2012.7.10
  2. 2. 什么是 Node.js• JavaScript 最早是运行在浏览器中,然而浏 览器只是提供了一个上下文,它定义了使 用 JavaScript 可以做什么,但并没有“说” 太多关于 JavaScript 语言本身可以做什么。• Node.js 事实上就是另外一种上下文,它允 许在后端(脱离浏览器环境)运行 JavaScri pt 代码。
  3. 3. • 要实现在后台运行 JavaScript 代码,代码需要 先被解释然后正确的执行。 Node.js 的原理正 是如此,它使用了 Google 的 V8 虚拟机( Go ogle 的 Chrome 浏览器使用的 JavaScript 执行 环境),来解释和执行 JavaScript 代码。• Node.js 事实上既是一个运行时环境,同时又 是一个库。
  4. 4. Node.js 安装• Windows• http://nodejs.org/dist/v0.8.2/node-v0.8.2-x86.msi• 双击运行安装,在 cmd 里运行 node -v• 命令行将打印出 :• v0.8.2• 新版会将 node.exe 文件安装到 C:Program Files (x 86)nodejs 目录下,并将该目录添加进 PATH 环 境变量。
  5. 5. NPM• NPM 是 Node.js 的包管理器• Nodejs 自身提供了基本的核心模块。但是 在这些基本模块上开发实际应用需要较多 的工作。• npm install iconv (要注意模块的运行环 境 windows 、 linux ?)
  6. 6. Node.js 特点• 单线程事件模型,简单高效• 基于活跃的高性能 V8 引擎• 社区活跃,组件丰富
  7. 7. Hello word• console.log(‘hello word’);
  8. 8. http 例子• var http = require("http");• http.createServer(function(request, response) {• response.writeHead(200, {"Content-Type": "text/plai n"});• response.write("Hello World");• response.end();• }).listen(8888);• console.log(Server running at http://localhost:8888/ )
  9. 9. 异步编程风格• 从 NodeJS 的 API 设计中可以看出来,任何 涉及 I/O 的操作,几乎都被设计成事件回调 (callback) 的形式。• readdirSync• readdir
  10. 10. • // 同步读取目录中的内容 var fs = require("fs"); filenames = fs.readdirSync(“. ");for (i = 0; i < filenames.length; i++) { console.log(filenames[i]);}console.log("it is done");• // 异步读取目录中的内容 var fs = require("fs");fs.readdir(".", function (err, filenames) { if (err) throw err; var i; for (i = 0; i < filenames.length; i++) { console.log(filenames[i]); }});console.log("it is done");
  11. 11. require 模块• 在 nodejs 中,模块大概可以分为核心模块 和文件模块。• 核心模块是被编译成二进制代码,引用的 时候只需 require 表示符即可,如 require(‘f s)• 文件模块,则是指 js 文件、 json 文件或者 是 .node 文件。例如 require(‘./xxx.js’) 。
  12. 12. 编写一个简单的模块copy.js:function copy(){ console.log(‘copy’);}exports.copy = copy;use.js 来使用 copy.js :var s = require(‘./copy.js’);s.copy();
  13. 13. Node.js 能做什么• Web 站点• 前端部署工具(文件合并、压缩,解析 le ss ,复制文件夹等)• Assets 代理工具
  14. 14. Node.js 资料• Node 入门• http://www.nodebeginner.org/index-zh-cn.html• 深入浅出 Node.js• http://www.infoq.com/cn/master-nodejs• Node.js require  模块• http://blog.sina.com.cn/s/blog_9f1c093101015cbo.html• NodeJs@Taobao 旺旺群:• 1058077337
  15. 15. Thanks!

×