当前位置:   article > 正文

node.js基础入门语法总结_nodejs基础语法

nodejs基础语法

目录

目录

1.node内置fs模块

1.fs.readFile()

2.fs.writeFile()

3.注意点

2.path模块

1.path.join()

2.path.basename()

3.path.extname()

3.http模块 

1.创建基本的web服务器步骤

2.res.end返回中文乱码问题

4.模块化

1.模块作用域

2.module对象,向外共享模块作用域中的成员

3.module.exports对象 向外共享作用域中成员

4.exports 和 module.exports使用误区

注意:

5.npm包管理工具使用

1.初始化项目包管理工具

2.一次性安装所有包

3.卸载包



1.node内置fs模块

1.fs.readFile()

fs.readFile()是node中内置的api可以通过require来直接引入,作用是用来读取指定文件

  1. fs.readFile('文件的路径',['文件的格式'],'回调函数')
  2. const fs = require('fs')
  3. fs.readFile('./file/1.txt', 'utf8', function(err, dataStr) {
  4. if (err) {
  5. return console.log('读取文件失败' + err.message);
  6. }
  7. console.log('读取文件成功' + dataStr);
  8. })

2.fs.writeFile()

fs.writeFile()同样是node内置的api作用是用来写入指定的文件,现代风格啊手动阀

  1. fs.writeFile(file,data[,options],callback)
  2. fs.writeFile(文件位置,'写入文件内容'[,格式],回调函数)
  3. fs.writeFileconst fs=require('fs')
  4. fs.writeFile('./file/2.txt','shenyabo',function (err){
  5. if (err){
  6. return console.log('文件写入失败',err.message)
  7. }
  8. console.log('文件写入成功')
  9. })

3.注意点

  1. fs.writeFile()方法只能用来创建文件,不能用来创建路径。

  2. 重复调用fs.writeFile()写入同一个文件,新写入的内容会被覆盖之前的旧内容。

2.path模块

path同样是node内置的api需要通过require引入

1.path.join()

使用path.join()可以把多个路径片段拼接为完整的路径字符串,如果拼接的路径中出现../则会抵消其前面一个路径。其中的__dirname,指的是当前文件路径

  1. const path = require('path')
  2. const pathStr = path.join('/a', '/b', '../', './d')
  3. console.log(pathStr);
  4. const pathStr2 = path.join(__dirname, './file/1.txt')
  5. console.log(pathStr2);

2.path.basename()

作用是获取路径中最后一部分,经常使用这个方法获取文件中的文件名。

使用方法:

  1. path.basename(path,[,ext])
  2. path.basename(文件路径,[,文件后缀名])

使用举例:

  1. const fpath = '/a/b/c/index.html'
  2. const fullname = path.basename(fpath)
  3. console.log(fullname);

  1. const fullname2 = path.basename(fpath, '.html')
  2. console.log(fullname2);

3.path.extname()

作用是获取文件的拓展名

使用方法:

path.extname(path)

使用举例:

  1. const fpath = '/a/b/c/index.html'
  2. const wenjian = path.extname(fpath)
  3. console.log(wenjian);

3.http模块 

http模块同样也是node中内置的api,通过require导入。

1.创建基本的web服务器步骤

(只是基础了解使用,真正开发一般使用框架,这样开发更高效)

  1. //1.导入http模块
  2. const http = require('http')
  3. //2.创建web实例
  4. const server = http.createServer()
  5. //3.为服务器绑定request事件,监听客户端的请求
  6. server.on('request', function(req, res) {
  7. console.log('someone visie our web server');
  8. })
  9. //4.启动服务器,启动端口为8080
  10. server.listen(8080, function() {
  11. console.log('server running at http://127.0.0.1:8080');
  12. })

2.res.end返回中文乱码问题

发送时需要将响应头设置返回格式为:

 res.setHeader('Content-Type', 'text/html;charset=utf-8')

具体使用流程:

  1. //导入http
  2. const http = require('http')
  3. //创建web实例
  4. const server = http.createServer()
  5. //给服务器绑定request事件,监听客户端请求
  6. server.on('request', (req, res) => {
  7. const str = `客户的 url is ${req.url}请求方法 method is ${req.method}`
  8. res.setHeader('Content-Type', 'text/html;charset=utf-8')
  9. res.end(str)
  10. })
  11. //启动服务器
  12. server.listen(80, () => {
  13. console.log('server running at http://127.0.0.1');
  14. })

设置好响应头格式这样就可以解决中文乱码问题。

4.模块化

1.模块作用域

1.在自定的模块当中定义的变量,方法等成员,只能在当前的模块中被访问使用,无法在别的模块中使用

2.好处:避免的全局变量污染。

2.module对象,向外共享模块作用域中的成员

1.在我们创建的每个.js文件当中都存在一个module对象,在module中存储了和当前模块有关的信息。

3.module.exports对象 向外共享作用域中成员

1.在我们自定义的.js文件中module.exports默认是一个空的对象为:module.exports={}

当我们想要在别的文件中使用这个模块时候,通过require导入的其实是对应模块的module.exports对象。

2.默认情况下exports和module.exports指向的是同一个对象,最终的共享结果,还是以module.exports指向的对象为准。exports 可以理解为module.exports简写版。

4.exports 和 module.exports使用误区

1.使用require()模块时候,得到的永远都是module.exports指向的对象。

注意:

为了防止混乱,一般在使用时不要在同一个模块中使用 exports 和 module.exports两种同时使用。

5.npm包管理工具使用

1.初始化项目包管理工具

1.创建文件时,文件名称不能用中文和含有空格,在空文件中首先执行npm init -y 创建package.json

npm init -y

当我们运行npm install命令时,npm包管理工具会自动把包的名称和版本号记录在package.json中。

在package.json中含有一个dependencies节点,专门用来记录您使用npm install 命令安装了那些包。

2.一次性安装所有包

npm install

1.执行npm install 命令时,npm包管理工具会先读取package.json中的dependences节点,

2.读取到记录的所有依赖包名称和版本之后,npm包管理工具会把这些包一次性的下载到项目中。

3.卸载包

npm uninstall 包名

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/896568
推荐阅读
相关标签
  

闽ICP备14008679号