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 复制代码
在这里插入代码片
相关推荐
只睡四小时2 小时前
MCP 弃用 SSE?Node 分帧漏 81.7% 事件
node.js·webassembly·实时通信·mcp·streamable http
hey you~13 小时前
个体户门店办理400电话,如何对接订单系统实现来电弹窗
node.js·webhook·400电话·门店数字化·来电弹窗·订单系统对接
YIAN2 天前
RAG 学到最后,我真正学会的不是“检索”,而是让系统知道自己缺什么
langchain·node.js·llm
用户11977079480732 天前
GitHub 电商开源项目分享:用 sharp 批量出饰品主图,试了裁剪、细节图和色彩配置文件三个坑
前端·node.js
donecoding2 天前
pnpm 配好了,为什么执行的还是另一份?命令入口与运行时排查
node.js·前端工程化
江屿风2 天前
【Plain Language Large Model】【从浏览器到全栈:一课精通Node.js三剑客】流食般投喂
笔记·前端框架·npm·node.js·js·npx
SomeOtherTime2 天前
node.js基础(AI回答)
node.js
雨季mo浅忆3 天前
记录Node.js安全漏洞及其内置Brotli解码器问题
node.js·安全性测试
tommyjiatong3 天前
资安底座连环雷:从 PHP2Shell 到 Node2Shell
node.js·php
SEO_juper3 天前
Bash 交叉验证 robots.txt 和 sitemap:两个文件自相矛盾,页面永远收录不了
开发语言·python·node.js·json·bash