没有合适的资源?快使用搜索试试~ 我知道了~
首页Node.js入门:开发完整应用与高级JavaScript技巧
Node.js入门:开发完整应用与高级JavaScript技巧
需积分: 9 1 下载量 76 浏览量
更新于2024-07-19
收藏 643KB PDF 举报
"NODE.js入门手册是一本深度讲解Node.js开发的实用指南,它不仅是一本基础教程,而是着重于教授读者如何利用Node.js构建实际应用,提升对高级JavaScript的理解。作者假设读者已经具备至少一门面向对象语言如Ruby、Python、PHP或Java的经验,对JavaScript的基础概念如数据类型、变量和控制结构有所了解。 书中首先阐述了JavaScript在Node.js环境中的独特性,强调与浏览器环境的区别,让读者明确开发目标。接着,通过实施一个传统的"HelloWorld"应用,引导读者逐步熟悉Node.js的基本用法,这个过程不仅是编写代码,更是理解和实践如何设计模块化架构。 深入部分,本书将探讨如何构建一个完整的web应用,包括设计考虑和所需实现的功能模块。作者将展示如何在Node.js中运用高级JavaScript特性,如函数和对象,以及为何这些特性在Node.js中有独特的价值,不同于其他编程语言。学习过程中,读者会理解这些概念如何协作以实现高效的应用开发。 此外,读者可以通过书中的Github代码仓库获取应用的所有源代码,便于实战练习和后续的学习跟进。这本书是一本旨在帮助有编程背景的JavaScript新手快速上手Node.js,进而掌握服务器端JavaScript开发的实用教材。"
资源详情
资源推荐
当我准备开始写我的第一个“真正的”Node.js 应用的时候,我不但不知道怎
么写 Node.js 代码,也不知道怎么组织这些代码。
我应该把所有东西都放进一个文件里吗?网上有很多教程都会教你把所
有的逻辑都放进一个用 Node.js 写的基础 HTTP 服务器里。但是如果我想
加入更多的内容,同时还想保持代码的可读性呢?
实际上,只要把不同功能的代码放入不同的模块中,保持代码分离还是相
当简单的。
这种方法允许你拥有一个干净的主文件(main file),你可以用 Node.js
执行它;同时你可以拥有干净的模块,它们可以被主文件和其他的模块调
用。
那么,现在我们来创建一个用于启动我们的应用的主文件,和一个保存着
我们的 HTTP 服务器代码的模块。
在我的印象里,把主文件叫做 index.js 或多或少是个标准格式。把服务器
模块放进叫 server.js 的文件里则很好理解。
让我们先从服务器模块开始。在你的项目的根目录下创建一个叫 server.js
的文件,并写入以下代码:
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
搞定!你刚刚完成了一个可以工作的 HTTP 服务器。为了证明这一点,我
们来运行并且测试这段代码。首先,用 Node.js 执行你的脚本:
node server.js
接下来,打开浏览器访问 http://localhost:8888/,你会看到一个写着
“Hello World”的网页。
这很有趣,不是吗?让我们先来谈谈 HTTP 服务器的问题,把如何组织项
目的事情先放一边吧,你觉得如何?我保证之后我们会解决那个问题的。
分析 HTTP 服务器
那么接下来,让我们分析一下这个 HTTP 服务器的构成。
第一行
请求(
require
)
Node.js 自带的 http 模块,并且把它赋值给 http
变量。
接下来我们调用 http 模块提供的函数: createServer 。这个函数会返回
一个对象,这个对象有一个叫做 listen 的方法,这个方法有一个数值参数,
指定这个 HTTP 服务器监听的端口号。
咱们暂时先不管 http.createServer 的括号里的那个函数定义。
我们本来可以用这样的代码来启动服务器并侦听 8888 端口:
var http = require("http");
var server = http.createServer();
server.listen(8888);
这段代码只会启动一个侦听 8888 端口的服务器,它不做任何别的事情,
甚至连请求都不会应答。
最有趣(而且,如果你之前习惯使用一个更加保守的语言,比如 PHP,它
还很奇怪)的部分是 createSever() 的第一个参数,一个函数定义。
实际上,这个函数定义是 createServer() 的第一个也是唯一一个参数。
因为在 JavaScript 中,函数和其他变量一样都是可以被传递的。
进行函数传递
举例来说,你可以这样做:
function say(word) {
console.log(word);
}
function execute(someFunction, value) {
someFunction(value);
}
execute(say, "Hello");
请仔细阅读这段代码!在这里,我们把 say 函数作为 execute 函数的第一
个变量进行了传递。这里返回的不是 say 的返回值,而是 say 本身!
这样一来, say 就变成了 execute 中的本地变量 someFunction ,
execute 可以通过调用 someFunction() (带括号的形式)来使用 say 函
数。
剩余76页未读,继续阅读
木头小菜
- 粉丝: 15
- 资源: 258
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 深入理解23种设计模式
- 制作与调试:声控开关电路详解
- 腾讯2008年软件开发笔试题解析
- WebService开发指南:从入门到精通
- 栈数据结构实现的密码设置算法
- 提升逻辑与英语能力:揭秘IBM笔试核心词汇及题型
- SOPC技术探索:理论与实践
- 计算图中节点介数中心性的函数
- 电子元器件详解:电阻、电容、电感与传感器
- MIT经典:统计自然语言处理基础
- CMD命令大全详解与实用指南
- 数据结构复习重点:逻辑结构与存储结构
- ACM算法必读书籍推荐:权威指南与实战解析
- Ubuntu命令行与终端:从Shell到rxvt-unicode
- 深入理解VC_MFC编程:窗口、类、消息处理与绘图
- AT89S52单片机实现的温湿度智能检测与控制系统
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功