当前位置: 首页 > news >正文

Nodejs

node是运行js的环境

node 基础命令

// 初始化
// npm init
// npm init -y// 全部选择yes
// 安装包
// npm install 包名
// npm i// 安装package-lock.json里面所有的包到node_modules
// npm i 包名// 安装当前最新版,
// npm i 包名@版本号//指定版本安装
// npm i -S 包名// dependencies开发、生产环境通用,默认不加-S
// npm i -D 包名// devDependencies开发环境专用
// npm i -g 包名// 全局安装,局部包一般导入使用,全局包一般通过命令使用
// npm root -g// 查看全局安装路径:C:\Users\admin\AppData\Roaming\npm\node_modules
// npm r 包名// 局部删除
// npm r -g 包名// 全局删除
// 配置npm命令别名
// 在package.json的scripts中设置:"别名":"node命令",使用npm run 别名 或 npm 别名
// npm config list// 查看配置
// npm config set registry https://registry.npm.taobao.org// 设置下载路径
// 使用包
// require("uniq")引入的是node_modules下的unip模块,该模块下的package.json下配置了main,指向了uniq.js
let uniq = require("uniq")
console.log(uniq([1, 2, 2, 3]));

模块导入导出

// 导出
module.exports = {id : 1,log : function () {console.log(exports === module.exports);// false:exports跟module.exports是一个对象,重新赋值变更了module.exports的地址}
}
module.exports.name = "zhangsan";
// 导入
const exp = require("./export.js");
console.log(exp);
exp.log();

文件读写

// 导入文件模块
let fs = require("fs");
// 文件写入
// {flag:"a"}追加写入,{flag:"w"}清空写入
// fs.writeFile("./file/file1.txt","666",{flag:"a"},err => {
//     if (err){
//         console.log(err);
//     }else {
//         console.log("文件写入成功");
//     }
// });
// 追加写入
fs.appendFile("./file/file1.txt","777",err => {if (err){console.log(err);}else {console.log("文件写入成功");}
});
// 文件读取
fs.readFile("./file/file2.txt",(err, data) => {if (err){console.log(err);}else {console.log(data.toString());}
});
// 绝对路径
console.log(__dirname);// 到文件所在目录
console.log(__filename);// 到文件本身
// 导入path模块追加打印文件路径
let path = require("path");
console.log(path.join(__dirname,"file3.txt"));
console.log(path.resolve(__dirname,"file3.txt"));

http

// 导入http模块
const http = require("http");
// http://locahost:9000/login?id=1
const server = http.createServer((req, res) => {console.log(req.method);// GETconsole.log(req.headers.host);// locahost:9000const url = new URL(req.url,"http://locahost:9000");console.log(url.searchParams.get("id"));// 1console.log(url.pathname);// /loginres.setHeader("content-type","text/html;charset=utf-8");res.write("hello");res.end("world");// end后不可以在写入
})
// 这里监听的端口才可以访问
server.listen(9000,() => console.log("9000 服务已启动"))
http://www.lryc.cn/news/222952.html

相关文章:

  • 【面经】spring,springboot,springcloud有什么区别和联系
  • SpringBoot Kafka消费者 多kafka配置
  • git 标签相关命令
  • 我在Vscode学OpenCV 图像运算(权重、逻辑运算、掩码、位分解、数字水印)
  • 【 Docker: 数据卷挂载】
  • windows上的静态链接和动态链接的区别与作用(笔记)
  • MySQL和Postgresql数据库备份和恢复
  • 使用MCU上的I2C总线进行传感器应用
  • 汽车标定技术(七)--基于模型开发如何生成完整的A2L文件(2)
  • ZZ308 物联网应用与服务赛题第E套
  • web相关框架
  • 安装dubbo-admin报错node版本和test错误
  • HTML使用canvas绘制海报(网络图片)
  • 20道高频JavaScript面试题快问快答
  • 【STM32】HAL库UART含校验位的串口通信配置BUG避坑
  • Python实用技巧:将 Excel转为PDF
  • 【面经】讲一下你对jvm和jmm的了解
  • 《网络协议》03. 传输层(TCP UDP)
  • ZooKeeper调优
  • 改进YOLOv5:结合ICCV2023|动态蛇形卷积,构建不规则目标识别网络
  • 开发知识点-NodeJs-npm/Pnpm/Vite/Yarn包管理器
  • Mac上好用的翻译软件推荐 兼容m
  • 软件下载网站
  • java获取近期视频流关键帧与截图
  • arcgis 批量删除Table中的某些Field
  • 工厂设备扫码使用售卖联网开发需要怎么开发开源代码?
  • 软考高级之132个工具和技术
  • 算法通过村第十八关-回溯|白银笔记|经典问题
  • vue2 集成 - 超图 - SuperMap iClient3D for WebGL 及常用方法
  • 应用程序服务器/事件驱动编程/CommonJS介绍