排列5最易中的玩法:Node.js教程

阅读(683.3k) 收藏 (308)

多端阅读《Node.js教程》:

手册简介:

Node.js 是运行在服务端的 JavaScript。

手册说明:

201610261551014651

官网:https://nodejs.org/en/

API文档:https://nodejs.org/dist/latest-v4.x/docs/api/

教程://www.g42ek.com.cn/nodejs/nodejs-tutorial.html

下载:https://nodejs.org/en/download/

Node.js是什么?

Node.js是一个Javascript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引 擎执行Javascript的速度非???,性能非常好。Node.js对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好。

Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

外文名 Node.js 类    别 JavaScript工具 发布时间 2009年5月 开发者 Ryan Dah

发展史

  • 2009年2月,Ryan Dahl在博客上宣布准备基于V8创建一个轻量级的Web服务器并提供一套库。
  • 2009年5月,Ryan Dahl在GitHub上发布了最初版本的部分Node.js包,随后几个月里,有人开始使用Node.js开发应用。
  • 2009年11月和2010年4月,两届JSConf大会都安排了Node.js的讲座。
  • 2010年年底,Node.js获得云计算服务商Joyent资助,创始人Ryan Dahl加入Joyent全职负责Node.js的发展。
  • 2011年7月,Node.js在微软的支持下发布Windows版本

特性

V8引擎本身使用了一些最新的编译技术。这使得用Javascript这类脚本语言编写出来的代码运行速度获得了极大提升,又节省了开发成本。对性能的苛求是Node的一个关键因素。 Javascript是一个事件驱动语言,Node利用了这个优点,编写出可扩展性高的服务器。Node采用了一个称为“事件循环(event loop)”的架构,使得编写可扩展性高的服务器变得既容易又安全。提高服务器性能的技巧有多种多样。Node选择了一种既能提高性能,又能减低开发复杂度的架构。这是一个非常重要的特性。并发编程通常很复杂且布满地雷。Node绕过了这些,但仍提供很好的性能。
Node采用一系列“非阻塞”库来支持事件循环的方式。本质上就是为文件系统、数据库之类的资源提供接口。向文件系统发送一个请求时,无需等待硬盘(寻址并检索文件),硬盘准备好的时候非阻塞接口会通知Node。该模型以可扩展的方式简化了对慢资源的访问, 直观,易懂。尤其是对于熟悉onmouseover、onclick等DOM事件的用户,更有一种似曾相识的感觉。
虽然让Javascript运行于服务器端不是Node的独特之处,但却是其一强大功能。不得不承认,浏览器环境限制了我们选择编程语言的自由。任何服务器与日益复杂的浏览器客户端应用程序间共享代码的愿望只能通过Javascript来实现。虽然还存在其他一些支持Javascript在服务器端 运行的平台,但因为上述特性,Node发展迅猛,成为事实上的平台。
在Node启动的很短时间内,社区就已经贡献了大量的扩展库(??椋?。其中很多是连接数据库或是其他软件的驱动,但还有很多是凭他们的实力制作出来的非常有用的软件。
最后,不得不提到的是Node社区。虽然Node项目还非常年轻,但很少看到对一个项目如此狂热的社区。不管是新手,还是专家,大家都围绕着项目,使用并贡献自己的能力,致力于打造一个探索、支持、分享、听取建议的乐土。
Node.js的优点
nodejs作为一个新兴的后台语言,有很多吸引人的地方:
RESTful API
单线程
Node.js可以在不新增额外线程的情况下,依然可以对任务进行并行处理 —— Node.js是单线程的。它通过事件轮询(event loop)来实现并行操作,对此,我们应该要充分利用这一点 —— 尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。
非阻塞IO
V8虚拟机
事件驱动

???/h2>Node.js使用Module??槿セ植煌墓δ?,以简化应用的开发。Modules??橛械阆馛++语言中的类库。每一个Node.js的类库都包含了十分丰富的各类函数,比如http??榫桶撕蚳ttp功能相关的很多函数,可以帮助开发者很容易地对比如http,tcp/udp等进行操作,还可以很容易的创建http和tcp/udp的服务器。
要在程序中使用??槭鞘址奖愕?,只需要如下:
在这里,引入了http类库,并且对http类库的引用存放在http变量中了。这个时候,node.js会在我们应用中搜索是否存在node_modules的目录,并且搜索这个目录中是否存在http的???。如果node.js找不到这个目录,则会到全局??榛捍嬷腥パ罢?,用户可以通过相对或者绝对路径,指定??榈奈恢?,比如:
var myModule = require('./myModule.js');
??橹邪撕芏喙δ艽肫?,在??橹械拇氪蟛糠侄际撬接械?,意思是在??橹卸ㄒ宓暮椒ê捅淞?,都只能在同一个??橹斜坏饔?。当然,可以将某些方法和变量暴露到??橥?,这个时候可以使用exports对象去实现。

安装

Linux 下 Node.js的安装
下面介绍下Node.js的安装,首先在nodejs的网站上根据操作系统下载相关的安装包,对于ubuntu[5]  (linux)下的安装,可以如下进行:
sudo apt-get update
sudo apt-get install node
或者:
sudo aptitude update
sudo aptitude install node
Node.js就会在sid库,可以将它们增加到sources来源列表中
sudo echo deb //ftp.us.debian org/debian/ sid main > /etc/apt/sources.list.d/sid.list
但要注意的是,在完成安装后,需要移走/etc/apt/sources.list.d/sid.list。[2] 
windows 下
官网现已提供 安装包和编译器,版本:v0.12.7 和相应的API 文档(English)

示例程序

任何一套标准都由一个著名的程序开始:Hello World !在Node中,Http是首要的。Node为创建http服务器作了优化,所以你在网上看到的大部分示例和库都是集中在web上(http框架、模板库等)。以下做了一个nodejs的Hello World 演示:

var http = require('http');
server = http.createServer(function (req, res) {
res.writeHeader(200, {"Content-Type": "text/plain"});
res.end("Hello W3Cschool\n");
});
server.listen(8000);
console.log("httpd start @8000");

Node.js 相关教程

《Node.js 拓展教程》



更新记录:

二维码
排列五发现一个规律
二维码
  • 微软要出一款注定不会赚钱的Xbox游戏外设 2018-12-14
  • 邯郸“廉政诊所”筑起基层首道廉政防线 2018-12-13
  • 澳门修订《司法组织纲要法》 涉国安法案件限中国籍法官审理 2018-12-12
  • 江西人存款1.66万亿元 2018-12-12
  • 蜈蚣精的出游必备战靴 旅行路上皆战场 2018-12-11
  • [微笑]原因很简单:房产的升值是由关联资源的增加形成的,跟房屋的产权人没有任何关系,肯定就不能让其从中获利! 2018-12-11
  • 精彩画面—国际摩托车滚雷巡游节 2018-12-10
  • 政协天津市第十四届委员会委员增补名单 2018-12-09
  • 你一人就代表了世人? 2018-12-09
  • 万物互联开启智慧新图景 下一代互联网未来已来 2018-12-08
  • 第十二届中国(南宁)国际园林博览会吉祥物正式发布 2018-12-08
  • 重走北上民主人士在沈阳活动之路 2018-12-07
  • 【理上网来·辉煌十九大】俄罗斯科学家:受到习主席接见印象深刻 2018-12-07
  • 《在人间》第152期:美国穷困之地的华裔 2018-12-06
  • 我们为什么不能做水而要做面团呢?水无形而面有形。 2018-12-06
  • 835| 302| 519| 896| 426| 217| 607| 323| 648| 552|