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 复制代码
在这里插入代码片
相关推荐
黑风风6 小时前
Ubuntu 安装 Node.js 指定版本指南
ubuntu·node.js·vim
GUIQU.6 小时前
【node.js】入门基础
node.js
flex88886 小时前
【开源】一个基于 Vue3 和 Electron 开发的第三方网易云音乐客户端,具有与官方客户端相似的界面布局
开源·node.js·vue
Q_Q19632884757 小时前
python宠物用品商城系统
开发语言·spring boot·python·django·flask·node.js·php
binnnngo12 小时前
解决npm install报错:getaddrinfo ENOTFOUND registry.nlark.com
前端·npm·node.js
Strive_Sun13 小时前
分析 vscode 运行 node.js 闪退时的场景
ide·vscode·node.js·编辑器
胡西风_foxww18 小时前
Node.js聊天室开发:从零到上线的完整指南
websocket·node.js·express·聊天室
c_zyer1 天前
使用 nvm 管理 Node.js 和 npm 版本
前端·npm·node.js
小刘不知道叫啥1 天前
简单说一下 Webpack分包
前端·javascript·webpack·node.js