初识node.js

// Node.js

// 定义:Node.js是一个跨平台(独立)JavaScript运行环境,使开发者可以搭建服务器端的JavaScript应用程序

// 作用:使用Node.js编写服务器端程序

// 编写数据接口,提供网页资源浏览功能等等

// 前端工程化:为后续学习vue喝react框架做铺垫

// 前端工程化就是,开发项目直到上线,过程中集成的所以工具和技术

// node.js是前端工程化的基础(因为Node.js可以主动读取前端代码内容)

// node.js环境没有DOM和BOM等(node.js与浏览器环境的区别)

// 如何执行代码:在VSCode终端中输入:node xxx.js回车即可执行(注意路径)

// 目标:编写 js 代码,在 Node 环境下使用 node 命令来独立执行

console.log('Hello, Node.js')

for (let i = 0; i < 3; i++) {

console.log(6)

}

// fs模块-读写文件

// 模块:类似插件,封装了方法/属性

// fs模块:封装了与本机文件系统进行交互的,方法/属性

// 语法:

// 1.加载fs模块对象

// 2.写入文件内容

// 3.读取文件内容

/**

* 目标:基于 fs 模块读写文件内容

* 1. 加载 fs 模块对象

* 2. 写入文件内容

* 3. 读取文件内容

*/

// 1. 加载 fs 模块对象

const fs = require('fs')

// 2. 写入文件内容

fs.writeFile('./test.txt', 'hello, Node.js', (err) => {

// 路径,内容

if (err) console.log(err)

else console.log('写入成功')

})

// 3. 读取文件内容

fs.readFile('./test.txt', (err, data) => {

if (err) console.log(err)

// data 是 buffer 16 进制数据流对象

// .toString() 转换成字符串

else console.log(data.toString())

})

// 路径问题

/**

* 建议:在 Node.js 环境的代码中,应使用绝对路径

*

* 原因:代码的相对路径是以终端所在文件夹为起点,而不是 Vscode 资源管理器

* 容易造成目标文件找不到的错误

*/

//前提:这个文件在和上一文件同一位置的文件夹中

const fs = require('fs')

// 1. 引入 path 模块对象

const path = require('path')

// 2. 调用 path.join() 配合 __dirname 组成目标文件的绝对路径(这是两个下划线)

// 注意:path.join()会使用特定于平台的分隔符,作为定界符,将所有给定的路径片段连接在一起

// 语法:1.加载path模块,2.使用path.join方法,拼接路径

console.log(__dirname)

fs.readFile(path.join(__dirname, '../test.txt'), (err, data) => {

// 先返回父级,在从同级找test.txt

if (err) console.log(err)

else console.log(data.toString())

})

相关推荐
天意pt21 分钟前
Blog-SSR 系统操作手册(v1.0.0)
前端·vue.js·redis·mysql·docker·node.js·express
程序员iteng3 小时前
AI一键图表生成、样式修改的绘图开源工具【easy-draw】
spring boot·开源·node.js
2301_818732066 小时前
安装了node,但是cmd找不到node和npm,idea项目也运行失败 已解决
前端·npm·node.js
Benny的老巢9 小时前
【n8n工作流入门02】macOS安装n8n保姆级教程:Homebrew与npm两种方式详解
macos·npm·node.js·n8n·n8n工作流·homwbrew·n8n安装
2301_8187320610 小时前
下载nvm后,通过nvm无法下载node,有文件夹但是为空 全局cmd,查不到node和npm 已解决
前端·npm·node.js
亮子AI11 小时前
【MySQL】node.js 如何判断连接池是否正确连接上了?
数据库·mysql·node.js
a程序小傲11 小时前
【Node】单线程的Node.js为什么可以实现多线程?
java·数据库·后端·面试·node.js
程序员爱钓鱼1 天前
Node.js 编程实战:测试与调试 —— Mocha / Jest / Supertest 使用指南
前端·后端·node.js
冴羽1 天前
JavaScript Date 语法要过时了!以后用这个替代!
前端·javascript·node.js
张洪权1 天前
node fs 模块核心 api
node.js