nodejs快速入门到精通1

参考

nodejs快速入门到精通
菜鸟教程-nodejs
nodejs官方文档

原因

视频免费 资料收费 笔记还是自己写吧

安装

nodejs官网

windows下:

#查看nodejs版本

node -v

#查看npm版本

npm -v

#设置npm为淘宝镜像源

npm config set registry https://registry.npmmirror.com/

环境

windows

vscode

中文简体插件

文心快码插件

live server

第一个代码

index.js

javascript 复制代码
var a="hello world";
console.log(a)

执行:node index.js

文件操作

javascript 复制代码
var fs=require('fs') // 引入api 转为fs对象
console.log(fs) // 打印出fs模块里有的api
复制代码
{
  appendFile: [Function: appendFile],
  appendFileSync: [Function: appendFileSync],
  access: [Function: access],
  accessSync: [Function: accessSync],
..........................
}

读取

javascript 复制代码
var fs=require('fs') // 引入api
//console.log(fs) // 打印出fs模块里有的api
fs.readFile('./a.txt','utf-8',function(err,data){
    if(err){ // err是null
        console.log('读取失败')
    }else{
        console.log(data)
    }
})

覆盖写入

javascript 复制代码
var fs=require('fs') // 引入api
fs.writeFile('./a.txt','6666',function(err){
    if(err) throw err;
    console.log('写入成功');
})

追加

多个api综合

javascript 复制代码
var fs = require('fs') // 引入api
//console.log(fs) // 打印出fs模块里有的api
fs.readFile('./a.txt', 'utf-8', function (err, data) {
    if (!err) { // err是null
        var newData = data + '899889'
        fs.writeFile('./a.txt', newData, function (err) {
            if (err) throw err;
            console.log('追加成功');
        })
    }
})

单个api

javascript 复制代码
var fs = require('fs') // 引入api
fs.appendFile('./a.txt', 'data to append', (err) => {
  if (err) throw err;
  console.log('The "data to append" was appended to file!');
});

总结:有捷径就不要走那么复杂的路

模块化编程

不使用模块化的问题

m1.js

javascript 复制代码
var username="wang"

m2.js

javascript 复制代码
var username="hhhhhh"

m.html

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script src="./m1.js"></script>
    <script src="./m2.js"></script>
    <script>
        alert(username);
    </script>
</body>
</html>

结论:重名时,后面加载的变量将替换前面的变量

问题:不利于团队开发 两个人开发 代码中都使用了username变量,两个变量冲突了,可以使用函数(匿名自定义函数)来区分,因为函数有作用域,或者放到不同的模块中

官方模块化开发规范

ex.js

javascript 复制代码
在这里插入代码片
相关推荐
. . . . .19 小时前
Node.js 的替代品Bun
node.js
一只月月鸟呀19 小时前
AI使用 Node.js modbus-serial 搭建一个可交互的 Modbus TCP 主站与从站 Demo
网络协议·tcp/ip·node.js
学渣y1 天前
nvm下载node版本,npm -v查看版本报错
前端·npm·node.js
灰太狼大王灬2 天前
Node.js 本地服务部署、常驻及调用完整笔记
笔记·node.js
你的电影很有趣2 天前
lesson71:Node.js与npm基础全攻略:2025年最新特性与实战指南
前端·npm·node.js
闲蛋小超人笑嘻嘻2 天前
前端面试十四之webpack和vite有什么区别
前端·webpack·node.js
特立独行的猫a2 天前
JSNES游戏模拟器在 Node.js 环境下的测试使用及高清显示优化
游戏·node.js·nes·jsnes
huangql5202 天前
基于前端+Node.js 的 Markdown 笔记 PDF 导出系统完整实战
前端·笔记·node.js
谢尔登3 天前
【Nest】基本概念
javascript·node.js·express
linux修理工3 天前
node.js 二进制安装
node.js