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命令,检测代码更改,自动重启程序

相关推荐
萌萌哒草头将军4 小时前
Node.js v24.7.0 新功能预览 🚀🚀🚀
前端·javascript·node.js
鹏多多5 小时前
JS轻量级PNG处理利器UPNG.js的API解析和实战应用
前端·javascript·node.js
盛夏绽放6 小时前
Node.js 和 Express 面试问题总结
面试·职场和发展·node.js·express
江湖人称小鱼哥6 小时前
主流技术栈 NestJS、TypeScript、Node.js版本使用统计
typescript·node.js·nestjs
林太白21 小时前
项目中的层级模块到底如何做接口
前端·后端·node.js
IOsetting21 小时前
Node.js环境和antd初始化项目
npm·node.js·nvm
蒙奇·D·路飞-1 天前
2025改版:npm 新淘宝镜像域名地址
前端·npm·node.js
Bdygsl2 天前
Node.js(1)—— Node.js介绍与入门
node.js
Java 码农2 天前
nodejs koa留言板案例开发
前端·javascript·npm·node.js
胡gh2 天前
浏览器:我要用缓存!服务器:你缓存过期了!怎么把数据挽留住,这是个问题。
前端·面试·node.js