Node.js

跨平台的node.js运行环境,使开发者可以搭建服务器端的js应用程序

它可以编写服务器端程序;

编写数据接口;提供网页资源浏览功能

前端工程化:开发集成的所有工具和技术

与浏览器环境的区别

node.js环境中没有DOM和BOM

fs模块-读取文件

javascript 复制代码
const fs= require('fs')

fs.writeFile('test.txt','qwertyuiopasdfghjkl;zxcvbn',(err)=>{
  if(err)
  console.log(err)
  else
  console.log('导入成功')
})

fs.readFile('test.txt',(err,data)=>{
  if(err)
  console.log(err)
  else
  console.log(data.toString())
})

最好使用绝对路径dirname

压缩文件

可运用正则表达式

javascript 复制代码
const fs = require('fs')
const path = require('path')

fs.readFile(path.join(__dirname, 'mi/index.html'), (err, data) => {
  if (err)
    console.log(err)
  else{
    const htmlstr = data.toString().replace(/[\r\n]/g, '')
    console.log(htmlstr)
    fs.writeFile(path.join(__dirname, 'index1.html'),htmlstr, err =>{
      if (err)
      console.log(err)
    else{
      console.log('导入成功')
    }
    })
  }
    

URL的端口号

标记服务器里不同功能的服务程序

端口号范围:0~65535之间任意整数

如web服务程序:提供网上信息浏览功能

可以基于node编写web服务程序,不过0~1023和一些其他端口被占用

http模块-创建web服务

创建web服务并响应内容给服务器

步骤:

1.加载http模块,创建web服务对象

2.监听request请求事件,设置响应头和响应体

3.配置端口号并启动web服务

浏览器请求http://localhost:3000测试

(localhost固定代表本机域名)

用node.js 浏览器启动web服务

text/plain为普通文本

server.on里的第一个形参是请求的信息对象

res为响应对象,可以设置响应头和响应体

访问:

req.url为资源路径

模块化

定义:commonJS模块是为Node.js打包js代码的原始方法。Node.js支持的浏览器和其他js代码运行时使用的ESC标准

在Node.js中,每个文件都被视为一个模块

好处:提高代码复用性,独立作用域

使用:到处与导入有特定语法

npm- 全局软件包 nodemon

软件包区别:

本地软件包:当前项目内使用,封装属性和方法,存在于node_modules

全局软件包:本机所有项目使用,封装命令和工具,存在系统设置的位置

nodemon作用:代替node命令,检测代码更改,自动重启程序

相关推荐
浪裡遊2 小时前
React Hooks全面解析:从基础到高级的实用指南
开发语言·前端·javascript·react.js·node.js·ecmascript·php
whale fall3 小时前
npm install安装的node_modules是什么
前端·npm·node.js
会飞的鱼先生3 小时前
Node.js-http模块
网络协议·http·node.js
用户3521802454756 小时前
MCP极简入门:node+idea运行简单的MCP服务和MCP客户端
node.js·ai编程
觅_12 小时前
Node.js 的线程模型
node.js
小飞悟15 小时前
浏览器和服务器是怎么“认出你”的?揭秘 Cookie 认证
后端·node.js
关山月15 小时前
什么是 Node.js ABI :它为什么重要
node.js
会飞的鱼先生1 天前
Node.js-path模块
node.js
企鹅侠客1 天前
实践篇:14-构建 Node.js 应用程序镜像
docker·node.js·dockerfile
爱分享的程序员1 天前
前端面试专栏-算法篇:18. 查找算法(二分查找、哈希查找)
前端·javascript·node.js