From 69f64c9afe3dcdb446201c114e7bc090588250e5 Mon Sep 17 00:00:00 2001 From: chen <11111111@qq.com> Date: Sat, 2 Mar 2024 17:36:41 +0800 Subject: [PATCH 1/2] biji --- "20240229-\345\256\211\350\243\205node.md" | 18 +++++ "20240301-\346\250\241\345\235\227.md" | 34 ++++++++ ...72\346\234\254\346\250\241\345\235\227.md" | 78 +++++++++++++++++++ 3 files changed, 130 insertions(+) create mode 100644 "20240229-\345\256\211\350\243\205node.md" create mode 100644 "20240301-\346\250\241\345\235\227.md" create mode 100644 "20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" diff --git "a/20240229-\345\256\211\350\243\205node.md" "b/20240229-\345\256\211\350\243\205node.md" new file mode 100644 index 0000000..e7f4687 --- /dev/null +++ "b/20240229-\345\256\211\350\243\205node.md" @@ -0,0 +1,18 @@ +## 安装node和npm + 官网选择LTS安装 +## 查看node.js版本号 +终端输入命令 +``` +node -v +``` +## npm +npm是Node.js的包管理工具(package manager)。 +``` +npm init ====>初始化一个新的npm项目 +npm -v ====>检测npm是否安装 +npmm i koa ====>镜像 +``` +## 执行node代码 +``` +node 要执行js文件的路径 +``` \ No newline at end of file diff --git "a/20240301-\346\250\241\345\235\227.md" "b/20240301-\346\250\241\345\235\227.md" new file mode 100644 index 0000000..30818d1 --- /dev/null +++ "b/20240301-\346\250\241\345\235\227.md" @@ -0,0 +1,34 @@ +## 模块 +在node环境中,一个.js文件就称之为一个模块(module). + +当一个模块编写完毕,就可以被其他地方引用。 +## 模块引用 +1. 暴露函数 +``` +hello.js + var s ='Hello'; + function fn(name){ + console.log(s + ',' +name+'!'); + } + module.exports = fn //(将函数fn作为模块的输出暴露出去,其他模块可以使用fn函数了) +``` +2. 其他模块引用函数 +``` +main.js + + var fn = require('./hello'); + var s = 'MM'; + fn(s);//Hello,MM! + +其中require函数的引用代表,引入的模块作为变量保存在fn变量中,所以main.js模块中引用了fn()函数,可以在main.js中使用它了。 +``` +## 总结 +要在模块中对外输出变量,用: + +module.exports = var; + +输出的变量可以是任意对象、函数、数组等等。 + +要引入其他模块输出的对象,用: + +var foo = require('other_module'); \ No newline at end of file diff --git "a/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" "b/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" new file mode 100644 index 0000000..a06ad79 --- /dev/null +++ "b/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" @@ -0,0 +1,78 @@ +## global +JavaScript有且仅有一个全局对象,在浏览器中,叫window对象。而在Node.js环境中,也有唯一的全局对象,叫global; +``` +global.console.log(''); +console.log('') +``` +## process +通过process对象可以拿到许多信息: +``` +process.version; +'v5.2.0' +> process.platform; +'darwin' +> process.arch; +'x64' +``` +## 判断js的执行环境 +``` +if (typeof(window) === 'undefined') { + console.log('node.js'); +} else { + console.log('browser'); +} +``` +## 同步、异步 +同步:代码简单,程序将等待IO操作(程序运行有先后顺序) +异步:不用等待IO操作,但代码较麻烦(程序运行无顺序) +## fs读取文件 +异步读取文件: +``` +var fs = require('fs'); + +fs.readFile('sample.txt', 'utf-8', function (err, data) { + if (err) { + console.log(err); + } else { + console.log(data); + } +}); + +``` +同步读取文件: +``` +var fs = require('fs'); + +var data = fs.readFileSync('sample.txt', 'utf-8'); +console.log(data); +``` +## fs写文件 +异步写文件 +``` +var fs = require('fs'); + +var data = 'Hello, Node.js'; +fs.writeFile('output.txt', data, function (err) { + if (err) { + console.log(err); + } else { + console.log('ok.'); + } +}); +``` +同步写文件 +``` +var fs = require('fs'); + +var data = 'Hello, Node.js'; +fs.writeFileSync('output.txt', data); +``` + +### 追加写入 +若 fs.writeFile() 不添加配置 则是替换式写入, +``` +追加式写入 +fs.writeFile(x,x,{flag:'a'},x); +fs.appendFile(x,x,x,x); +fs.appendFileSync(x,x,) +``` -- Gitee From 9b275f3f61363246d80002e627b57c96395f4428 Mon Sep 17 00:00:00 2001 From: chen <11111111@qq.com> Date: Sat, 2 Mar 2024 17:37:33 +0800 Subject: [PATCH 2/2] biji --- .../20240229-\345\256\211\350\243\205node.md" | 0 .../20240301-\346\250\241\345\235\227.md" | 0 .../20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename "20240229-\345\256\211\350\243\205node.md" => "\351\231\210\344\275\263\344\270\275/20240229-\345\256\211\350\243\205node.md" (100%) rename "20240301-\346\250\241\345\235\227.md" => "\351\231\210\344\275\263\344\270\275/20240301-\346\250\241\345\235\227.md" (100%) rename "20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" => "\351\231\210\344\275\263\344\270\275/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" (100%) diff --git "a/20240229-\345\256\211\350\243\205node.md" "b/\351\231\210\344\275\263\344\270\275/20240229-\345\256\211\350\243\205node.md" similarity index 100% rename from "20240229-\345\256\211\350\243\205node.md" rename to "\351\231\210\344\275\263\344\270\275/20240229-\345\256\211\350\243\205node.md" diff --git "a/20240301-\346\250\241\345\235\227.md" "b/\351\231\210\344\275\263\344\270\275/20240301-\346\250\241\345\235\227.md" similarity index 100% rename from "20240301-\346\250\241\345\235\227.md" rename to "\351\231\210\344\275\263\344\270\275/20240301-\346\250\241\345\235\227.md" diff --git "a/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" "b/\351\231\210\344\275\263\344\270\275/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" similarity index 100% rename from "20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" rename to "\351\231\210\344\275\263\344\270\275/20240302-\345\237\272\346\234\254\346\250\241\345\235\227.md" -- Gitee