目录
一、什么是Nods.js
二、什么是NPM
三、Node.js 和 NPM 之间的联系
四、部署一个入门的服务器程序
1.查看Node.js 和 NPM 的版本号
2.执行 js 文件
3.服务器端应用开发(入门)
4.验证服务器是否启动成功
5.使用NPM管理项目
五、基本语句
1.fs 模块读写操作文件
1.1 fs.readFile() 方法
1.2 fs.writeFile() 方法
1.3 fs.appendFile() 方法
前言
本周学习了nodejs 的一些入门知识,后面将继续学习nodejs的进阶。同时,因为nodejs是基于JavaScript 的运行环境,所以也要把 JavaScript 学好
一、什么是Nods.js
Node.js 是基于Chrome V8引擎的JavaScript运行环境,分为两个部分,一是解析和执行js代码,另一部分是内置API。那什么是API? 百度解释:(API是应用程序编程接口,英文全称为Application Programming Interface。它是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。)通俗说就是别人写好代码,提供给开发人员使用的接口。
二、什么是NPM
NPM 全称是 Node Package Manager,是Node.js 的包管理工具,相当于 Maven。顾名思义,NPM就是用来下载 js 库并且管理项目的工具。
三、Node.js 和 NPM 之间的联系
Node.js 是平台,而 npm 是这个平台上的默认包管理工具,nodejs 内置了 npm
Node.js 内置了 NPM,所以在下载安装 Node.js 的时候,NPM 就已经下载安装好了。简而言之,Node.js 提供了一个运行环境,而 npm 则提供了管理这个环境中所有依赖关系和组件的工具。
四、部署一个入门的服务器程序
1.查看Node.js 和 NPM 的版本号
在命令提示符中输入如下代码,查看各自的版本号
node -v //查看node的版本号
npm -v //查看npm的版本号
(注:在安装Node.js 时,Node.js 内置了 npm,所以 npm 自动安装了,也可以手动下载,这里不做说明)
2.执行 js 文件
2.1. 在任意的位置创建一个文件夹,如名为nodejs的文件夹,然后拖动在VSCode中打开。
在此文件夹下创建一个 js 文件,如名为control的 js 文件
2.2. 在代码块中输入如下代码
console.log('Hello Nose.js')
//在终端会显示Hello Nose.js
console.log()的主要作用是用于调试和输出程序中的消息、变量值或其他信息
在开发过程中,开发者经常使用console.log来检查代码是否按预期执行,或者查看某个变量的值。console.log非常简单易用,只需要在代码中写上console.log(),并将要输出的数据作为参数传递给它即可。例如,它可以用来输出字符串、数字、对象等不同类型的数据。当输出对象时,console.log会将对象以可展开的方式显示在控制台中,方便我们查看对象的结构和属性
2.3.然后在当前文件夹的位置打开终端,输入如下代码
node control.js
// control.js是要执行的js文件名
一定在要执行js文件所在的文件夹的目录下执行
3.服务器端应用开发(入门)
3.1. 还是在node.js 目录下,创建一个名叫test 的js文件(文件名自取)在代码块中写如下代码
const http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello this is test!');
}).listen(8885);
console.log('Server running at http://127.0.0.1:8885/');
使用 http 模块创建 Web 服务器:const http = require('http')
创建一个HTTP服务器:http.createServer(request,response)// request是请求对象,response是响应对象,收到请求后要做出的响应。
端口号:8885
然后在当前所在的文件夹下打开终端,运行服务器程序
node test.js
4.验证服务器是否启动成功
在浏览器中输入localhost:8885 进行验证
5.使用NPM管理项目
在VSCode中创建一个文件夹,如npmdemo
在该文件夹中启动命令提示符,输入
npm init -y
直接生成 package.json 文件
name:项目名称
version:项目版本号
description:项目描述
package.json 文件相当于 maven 的 pom.xml
五、基本语句
1.fs 模块读写操作文件
fs 模块是官方提供的用来操作文件的
- fs.readFile() 方法,读取文件中的内容
- fs.writeFile() 方法,向执行的文件中写入内容
1.1 fs.readFile() 方法
fs.readFile(path,option,callback)
// path (必选项)文件地址;option (可选项)意为以什么编码格式打开;callback(必选项)执行结束后,通过回调函数拿到读取结果
在文件夹中创立一个 js 文件,用来练习 fs.readFile() 方法,在 js 文件中输入如下代码
const fs = require("fs")
fs.readFile('1.txt','utf-8',function(err,data){
console.log(err)
console.log(data)
})
代码说明:
1. const fs = require("fs") 导入 fs 模块
2. fs.readFile() 使用该方法,以utf-8打开1.txt文件
3.在终端打印文本中的信息
1.txt中的内容:
在终端运行 js 文件(在当前文件打开终端)
1.2 fs.writeFile() 方法
fs.writeFile(file,in,option,callback)
// path (必选项)文件地址;in(必选项)向文件中写入内容;option (可选项)意为以什么编码格式打开;callback(必选项)执行结束后,通过回调函数
const fs = require("fs")
fs.writeFile('1.txt','我们****玩家是这样的(害怕、惊恐、震惊)','utf-8',function(err){
console.log(err)
})
在 js 文件中输入如下代码
然后在终端运行
在1.txt 文件中可以看到已经写入的内容
这里可以明显看到,之前原本的内容被这次的写入操作给覆盖了,为了避免这种情况,可以使用
appendFile() 方法
1.3 fs.appendFile() 方法
该方法的参数和 fs.writeFile() 方法中的参数一致,是在文件中追加内容,而不覆盖原有的内容。如:就在上文使用 fs.writeFile() 方法后的基础上,再使用 fs.appendFile() 方法进行演示
const fs = require("fs")
fs.appendFile('1.txt','第五人格','utf-8',function(err){
if(err) throw err
console.log('追加成功')
})
if(err) throw err // 抛出异常
然后在终端中运行 js 文件,在1.txt 文件中就可以看到追加的内容了
(可以使用 \n 实现换行)
下一博客学习 http 模块,最后每周一句:
少年就是莽撞却生动 ,时刻准备着尝试 ,无所谓失败