1.HelloWorld
方法1,直接运行
安装好node js后,在cmd命令窗口输入node.
然后你可以直接输入:console.log('Hello World');
方法2,执行js
或者把他写在一个helloworld.js里,cmd模式输入(注意看到$,不是nodejs命令,仅仅普通cmd命令):
$ node helloworld.js
你都能看到输出结果
支持变量写法
console.log('%s: %d', 'Hello', 25);
另外直接作为字符串执行:$ node -e "console.log('Hello World');"
2.建立Http服务器
//app.js
接下来运行node app.js命令,打开浏览器访问http://127.0.0.1:3000
Node.js 只有在第一次引用到某部份时才会去解析脚本文件,以后都会直接访问内存,避免重复载入Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。
supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启Node.js。
使用方法很简单,首先使用npm 安装supervisor:
$ npm install -g supervisor
接下来,使用supervisor 命令启动app.js:
$ supervisor app.js
1.
var
http = require(
'http'
);
2.
http.createServer(
function
(req, res)
3.
{
4.
res.writeHead(200, {
'Content-Type'
:
'text/html'
});
5.
res.write(
'<h1>Node.js</h1>'
);
6.
res.end(
'<p>Hello World</p>'
);
7.
}).listen(3000);
8.
console.log(
"HTTP server is listening at port 3000."
);
Node.js 只有在第一次引用到某部份时才会去解析脚本文件,以后都会直接访问内存,避免重复载入Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。
supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启Node.js。
使用方法很简单,首先使用npm 安装supervisor:
$ npm install -g supervisor
接下来,使用supervisor 命令启动app.js:
$ supervisor app.js
3.非阻塞单线程异步编程
让我们看看在Node.js 中如何用异步的方式读取一个文件,下面是一个例子:
//readfile.js
输出:
end.
Contents of the file.
其中的function就是回调函数,不会阻塞等待的
输出:
Contents of the file.
end.
//readfile.js
01.
var
fs = require(
'fs'
);
02.
fs.readFile(
'file.txt'
,
'utf-8'
,
function
(err, data)
03.
{
04.
if
(err)
05.
{
06.
console.error(err);
07.
}
else
08.
{
09.
console.log(data);
10.
}
11.
});
12.
console.log(
'end.'
);
end.
Contents of the file.
其中的function就是回调函数,不会阻塞等待的
1.
var
fs = require(
'fs'
); 异步写法。当然这个读取文件也有同步写法,如下:
2.
vardata = fs.readFileSync(
'file.txt'
,
'utf-8'
);
3.
console.log(data);
4.
console.log(
'end.'
);
Contents of the file.
end.
6.调试
Node.js 支持命令行下的单步调试。在命令行下执行node debug xxx.js,将会启动调试工具.
Node.js 调试命令
run 执行脚本,在第一行暂停
restart 重新执行脚本
cont, c 继续执行,直到遇到下一个断点
next, n 单步执行
step, s 单步执行并进入函数
out, o 从函数中步出
setBreakpoint(), sb() 在当前行设置断点
setBreakpoint(‘f()’), sb(...) 在函数f的第一行设置断点
setBreakpoint(‘script.js’, 20), sb(...) 在script.js 的第20行设置断点
clearBreakpoint, cb(...) 清除所有断点
backtrace, bt 显示当前的调用栈
list(5) 显示当前执行到的前后5行代码
watch(expr) 把表达式 expr 加入监视列表
unwatch(expr) 把表达式 expr 从监视列表移除
watchers 显示监视列表中所有的表达式和值
repl 在当前上下文打开即时求值环境
kill 终止当前执行的脚本
scripts 显示当前已加载的所有脚本
version 显示V8 的版本
远程调试:
node --debug[=port] xxx.js
开发工具调试:
如果开发工具支持,可以在开发工具调试,比如eclipse(我会尝试idea是否可行)
使用node-inspector 调试Node.js:
使用 npm install -g node-inspector 命令安装node-inspector,然后在终端中通过node --debug-brk=5858 xxx.js 命令连接你要除错的脚本的调试服务器
启动node-inspector:$ node-inspector
在浏览器中打开http://127.0.0.1:8080/debug?port=5858,即可显示出优雅的Web 调试工具
Node.js 调试命令
run 执行脚本,在第一行暂停
restart 重新执行脚本
cont, c 继续执行,直到遇到下一个断点
next, n 单步执行
step, s 单步执行并进入函数
out, o 从函数中步出
setBreakpoint(), sb() 在当前行设置断点
setBreakpoint(‘f()’), sb(...) 在函数f的第一行设置断点
setBreakpoint(‘script.js’, 20), sb(...) 在script.js 的第20行设置断点
clearBreakpoint, cb(...) 清除所有断点
backtrace, bt 显示当前的调用栈
list(5) 显示当前执行到的前后5行代码
watch(expr) 把表达式 expr 加入监视列表
unwatch(expr) 把表达式 expr 从监视列表移除
watchers 显示监视列表中所有的表达式和值
repl 在当前上下文打开即时求值环境
kill 终止当前执行的脚本
scripts 显示当前已加载的所有脚本
version 显示V8 的版本
远程调试:
node --debug[=port] xxx.js
开发工具调试:
如果开发工具支持,可以在开发工具调试,比如eclipse(我会尝试idea是否可行)
使用node-inspector 调试Node.js:
使用 npm install -g node-inspector 命令安装node-inspector,然后在终端中通过node --debug-brk=5858 xxx.js 命令连接你要除错的脚本的调试服务器
启动node-inspector:$ node-inspector
在浏览器中打开http://127.0.0.1:8080/debug?port=5858,即可显示出优雅的Web 调试工具
相关推荐
以上内容总结了Node.js学习笔记中提到的关键知识点,涵盖了Node.js的基本概念、编程基础、模块系统、服务器搭建、以及交互式环境的使用。这些内容对于初学者来说是非常重要的基础知识,有助于他们构建基础的Node.js...
本学习笔记和经验总结将深入探讨Node.js的核心概念、主要特性、常用模块以及实战技巧,帮助你从零基础到熟练掌握Node.js。 一、Node.js核心概念 1. 非阻塞I/O模型:Node.js采用事件驱动、非阻塞I/O模型,提高了...
本学习笔记旨在深入解析Node.js的核心概念、特性以及常见应用,帮助你高效地掌握这一强大的开发工具。 1. **事件驱动模型** Node.js采用非阻塞I/O和事件驱动模型,使得它在处理高并发请求时表现出色。这种模型通过...
Node.js 是一种基于 Chrome V8 引擎的 JavaScript 运行环境,它允许开发者在服务端使用 JavaScript 进行编程。对于初学者来说,Node.js 的学习可能涉及到一些新的概念,比如API接口、端口号以及数据库的搭建。下面将...
总的来说,这是一份全面覆盖Node.js基础知识及进阶内容的学习资料,适合前端开发者想要扩展后端技能,或是对全栈开发感兴趣的人员学习。通过深入学习和实践,你将能够熟练地使用Node.js进行服务器端开发,构建高效、...
### Up and Running with Node.js 学习笔记 #### 在线学习了“up and running with Node.js”,做了一些笔记,适合入门。 **Node.js** 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它使得开发人员能够在...
在IT行业中,Node.js是一个备受关注的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程。本文将深入探讨如何正确地学习Node.js,基于提供的标题和描述,我们将围绕这一主题展开,详细介绍Node.js的...
这份学习笔记涵盖了Node.js的多个重要知识点,包括ES模块化、Express框架的基础、JSONP处理、Koa2框架、Mocha测试工具以及MySQL数据库的操作。让我们逐一深入探讨这些主题。 1. **ES模块化**:在Node.js中,ES模块...
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。 对于云应用的快速开发,学习并熟练掌握Node已经是一项全栈开发工程师的必备技能。 我计划用一个月...
总之,"node.js笔记文件夹"涵盖了Node.js的基础知识、核心概念、实用技巧和最佳实践,是学习和掌握Node.js不可或缺的学习资料。通过阅读和实践其中的内容,不仅可以深入理解Node.js的工作原理,还能提升JavaScript...
在"node.js笔记.zip"这个压缩包中,我们可以推测其内容主要涵盖了Node.js的基础知识、核心模块、文件系统操作、网络编程、模块化开发、异步处理、中间件和框架等内容。 1. **基础概念**:Node.js的基础包括了解...
这个压缩包中的“源码&笔记”可能包含了一些实际的代码示例、教程文档或者学习笔记,对于深入理解和实践 Node.js 技术提供了宝贵的资源。前端开发者可以通过这些材料学习如何运用 Node.js 实现前后端同构、构建 CLI ...
在IT行业中,Node.js是一个非常流行的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程。在标题和描述中提到的“Node.js-将命令行界面描述为易于阅读的人性化的markdown文档”是一个关于如何利用...
Node.js 是一个基于Chrome V8引擎的JavaScript运行环境,它允许开发者在服务器端使用JavaScript进行编程,实现了全栈JavaScript开发。Node.js的特点包括非阻塞I/O模型和事件驱动,使其在处理高并发请求时表现出色,...
自学入门最全node笔记学习、学习路线Node.js.
node.js全部学习笔记
一、Node.js基础 Node.js是建立在Google V8引擎上的JavaScript运行环境,它允许开发者使用JavaScript进行服务器端编程。Node.js利用事件驱动、非阻塞I/O模型,使其在处理高并发请求时表现出色。Node.js的模块化系统...
本章节主要介绍了如何开始学习 Node.js 编程的基础环境设置。无论是从零开始搭建服务器还是在本地计算机(如笔记本或台式机)上进行编程,都需要确保拥有一个适合开发的环境。对于不熟悉 Node.js 或尚未设置好开发...
“node.js”标签进一步确认了这个压缩包的核心内容是围绕Node.js这一JavaScript运行环境的,可能涵盖了Node.js的基础知识、开发工具、模块系统、异步编程等方面。 【压缩包子文件的文件名称列表】 由于未提供具体的...