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 小时前
解决依赖下载报错,npm ERR! code EPERM
前端·npm·node.js
fanjinzhi19 小时前
Node.js通用计算15--TypeScript介绍
javascript·typescript·node.js
light blue bird20 小时前
MES/ERP的Web多页签报表系统
数据库·node.js·ai大数据·mes/erp·web报表
Doris89321 小时前
【Node.js 】Node.js 与 Webpack 模块化工程化入门指南
前端·webpack·node.js
alanesnape21 小时前
在 Surface Pro X (ARM64) 上成功部署 Claude Code 的完整复盘
git·node.js·claude code部署·msys2clangarm64·美区apple id·礼品卡支付·surface pro x
MuShan-bit21 小时前
CSDN-推荐开源项目-auto-x-to-wechat
爬虫·微信·开源·node.js·twitter
JohnsonXin21 小时前
一次线上白屏排查:静态 import 是如何悄悄破坏 Webpack 共享 Chunk 的
前端·webpack·node.js
徐小夕@趣谈前端1 天前
借助AI,1周,0后端成本,我们开源了一款Office预览SDK
前端·人工智能·开源·node.js·编辑器·github·格式工厂
None3212 天前
【NestJs】Websocket 通关指南:从入门到实战
后端·node.js