入门Node.js
2021/7/25 13:06:04
本文主要是介绍入门Node.js,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.概念
Node.js是什么
1、以前只有浏览器可以解析执行JavaScript代码,Node.js作者把Google中V8引擎移植出来开发的一个独立JavaScript运行环境,node.js就是一个运行JavaScript运行时的环境
2、在node.js这个环境下,给JavaScript提供了一些服务器级别的操作API
3、Node.js是事件驱动、非阻塞IO模型(异步)的
4、JavaScript相关的包都存放在npm上,使用时可以随时使用命令进行下载 例如下载jquery则使用命令 npm install jquery
Node.js能做什么
1、Web服务器后台、命令行工具
2.学习网站
Nodejs中文社区 cnodejs.org/
新手入门 www.nodebeginner.org/
3.安装完后输入 node --version或者 node -v确认版本
2.基础知识
2.1输出helloworld
在路径:D:\Project\Node.js\1 下新建文件helloworld.js 编写代码:
var foo = 'helloworld'; console.log(foo);
打开控制台 win + r 输入 cmd
进入文件路径
执行命令: node helloworld.js
2.2读取文件
当前路径D:\Project\Node.js\1下新建文件a.txt里面放入内容我爱你
新建js文件read.js写入代码
//加载核心模块fs file-system var fs = require('fs'); //读取文件 fs.readFile('a.txt', function(error, data){ console.log(data); console.log(data.toString()); })
执行命令node read.js
总结:readFile接口第一个参数路径读取成功则执行回调函数,data为读取的数据为二进制数据
2.3写文件
当前路径D:\Project\Node.js\1新建js文件write.js编写代码
//加载核心模块fs file-system var fs = require('fs'); //1.文件路径 2.文件内容 3.回调函数 fs.writeFile('b.txt', '你爱我', function(error){ })
执行命令 node write.js
结果:
1.当前路径下会新建一个b.txt文件,打开文件,里面会有我们写入的内容“你爱我”
2.当我们修改接口writeFile参数 b.txt 为 a.txt 执行命令后会将a.txt里面内容删除 然后写入内容"你爱我"
2.4 http服务
当前路径D:\Project\Node.js\1新建js文件http.js编写代码
//加载http模块 var http = require('http'); //创建一个Web服务器 var server = http.createServer(); //注册request事件 server.on('request', function(){ console.log('服务器成功收到请求事件'); }) //绑定端口号 server.listen(3000,function(){ console.log('启动成功 端口号 3000'); })
执行命令 node http.js
服务器启动成功
使用浏览器访问 127.0.0.1:3000
查看服务器:
其实很好理解,按照字面意思写代码,饿了就要吃饭的逻辑,
1.首先客户端要访问服务器,就要有一个服务器
var server = http.createServer();
2.有了服务器就要启动它 在3000端口启动
server.listen(3000,function(){console.log('启动成功 端口号 3000');})
3.服务器创建好了并且启动了 那么客户端访问的时候 服务器需要用一个东西去接收访问 就像存钱需要存取款机才能把钱存进去 那么存取款机就是 on注册的事件
server.on('request', function(){ console.log('服务器成功收到请求事件'); })
事件函数回调函数参数request:
//注册request事件 server.on('request', function(request, response){ console.log('服务器成功收到请求事件'); console.log('参数request = ' + request.url); })
启动服务器 node http.js
浏览器输入http://127.0.0.1:3000/aaaaaa
参数request.url为地址端口号的访问路径
事件函数回调函数参数response:
//注册request事件 server.on('request', function(request, response){ console.log('服务器成功收到请求事件'); console.log('参数request = ' + request.url); response.write('woyeaini'); response.end(); })
启动服务器、访问服务器、客户端收到了服务器发过来的woyeaini
其中response.end();表示服务器往客户端发送内容停止写入并发送过去 如果不使用这句则会一直等待
3模块系统
3.1核心模块
Node为js提供了很多服务器级别API,这些API大多包装到核心模块中了,例如上面已经使用的文件操作fs模块,http服务构建的http模块,os操作系统信息模块
//加载不同模块 var fs = require('fs'); var http = require('http'); var os = require('os');
3.2自定义模块
简单的模块化例子
在D:\Project\Node.js\2路径下新建a.js和b.js文件
分别编写js代码
//a.js文件内容 console.log('a.js被执行了'); require('./b.js');
//b.js文件内容 console.log('b.js被执行了');
切换到路径D:\Project\Node.js\2执行命令结果如下
以上例子说明每一个js文件都是一个模块,执行不同的js可以使用require加载模块,require另一个作用是返回加载模块导出的对象,举例子
修改a.js和b.js代码
//a.js文件内容 var ret = require('./b.js'); console.log(ret);
//b.js文件内容 var foo = 'bbbbb'; exports.foo = 'hello';
执行命令可以看到结果
每个文件都提供一个对象exports,可以将模块中的变量,函数挂载上去,使用require加载的时候,就会返回该文件的对象exports;
将函数add挂在对象上为
exports.add = function(x,y){ return x + y; }
这篇关于入门Node.js的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15useCallback教程:React Hook入门与实践
- 2024-11-15React中使用useContext开发:初学者指南
- 2024-11-15拖拽排序js案例详解:新手入门教程
- 2024-11-15React中的自定义Hooks案例详解
- 2024-11-14受控组件项目实战:从零开始打造你的第一个React项目
- 2024-11-14React中useEffect开发入门教程
- 2024-11-14React中的useMemo教程:从入门到实践
- 2024-11-14useReducer开发入门教程:轻松掌握React中的useReducer
- 2024-11-14useRef开发入门教程:轻松掌握React中的useRef用法
- 2024-11-14useState开发:React中的状态管理入门教程