什么是node.js
node.js是一个基于Chrome V8引擎的JavaScript运行环境
我们学习node.js主要就是学习内置的API怎么使用
注意:
node.js的学习路径
JavaScript基础语法 -> node.js内置API模块(fs,path,http等) + 第三方API模块(express, MySQL等)
了解一些小知识:终端
终端(Terminal)是专门为开发人员设计的,用于实现人机交互的一种方式,我们有必要识记一些常用的终端命令,来辅助我们更好的操作与使用计算机.
在node.js环境中执行JavaScript代码
现在我演示一遍:
首先,我们准备好一个脚本文件:
接下来打开我们的终端: win键+R ,输入cmd即可进入终端
此时的路径:
首先我们要获取脚本文件的路径:
点击这个地址栏
就可以直接复制了
那要怎么切换路径呢?
①我们可以输入"cd "+路径
②也可以直接在地址栏输入cmd直接进入终端(win10)
③还有一种方法:在空白处按住shift键+鼠标右键,选择"在此处打开powershell窗口"
运行:
得到结果:
终端中的快捷键
fs文件系统模块
fs模块是node.js官方提供的,用来操作文件的模块.它提供了一系列的方法和属性,用来满足用户对文件的操作需求.
如果要在JavaScript代码中,使用fs模块来操作文件,则需要使用如下的方式先导入它:
const fs = require('fs')
fs.readFile( )方法
使用readFile()方法,可以读取指定文件中的内容,语法格式如下:
fs.readFile(path[,options],callback)
先准备一个文本文件:
JS文件:
打开终端运行:
文件路径错误则会输出错误信息:
fs.writeFile( )方法
使用fs.writeFile( )方法可以向指定的文件写入内容,语法如下:
fs.writeFile(file, data[,options], callback)
示例:
假如一开始没有这个文件,则会自动创建这个文件;假如文件里面已经有内容了,这个方法会覆盖掉原本的内容
练习案例:
先写一个成绩的txt文件:
最后的成绩文档:
fs模块 - 路径动态拼接的问题
在使用fs模块操作文件时,如果提供的操作路径是以./或者../开头的相对路径时,很容易出现路径拼接错误的问题.
原因: 代码在运行的时候,会以执行node命令时所处的目录,动态拼接出被操作文件的完整路径
解决方法:
path路径模块
path模块是node.js官方提供的,用来处理路径的模块.它提供了一系列的方法和属性,用来满足用户对路径的处理需求
例如
如果要在JavaScript代码中,使用path模块来处理路径,则需要使用如下的方式导入它:
const path = require('path')
path.join( )方法
使用path.join( )方法,可以把多个
路径片段拼接为完整的路径字符串,语法格式如下:
path.join([...paths])
懒了,直接截图吧:
http模块
http模块是node.js官方提供的,用来创建web服务器的模块.通过http模块提供的和http.createServer( )方法,就能方便的把一台普通的电脑变成一台web服务器,从而对外提供web资源服务.
导入的方法和之前一样:
1.导入模块+2.创建web实例
3.为服务器实例绑定request事件,只要有客户端来请求我们的服务器,就会触发request事件,从而调用这个事件处理函数
4.调用服务器实例的listen()方法,即可启动当前的web服务器实例:
现在打开终端运行
如果我们打开地址,就会打印这个:
停止终端的方法: ctrl+C
注意req和res的区别,一个是客户端的一个是服务器的
这次我们打开网页就会有响应的内容了:
就比如刚刚的响应,换成中文字符就会变成这样:
完了不知道是不是因为请求太多,拒绝连接请求了...后面的效果可能看不到了
明天再继续吧!