_dirname 和_filename 获取正在执行的 js 文件的路径|学习笔记

简介: 快速学习_dirname 和 _filename 获取正在执行的 js 文件的路径

开发者学堂课程【Node.js 入门与实战:_dirname 和_filename 获取正在执行的js文件的路径】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/588/detail/8252


_dirname 和_filename 获取正在执行的 js 文件的路径

 

一、获取正在执行的 js 文件路径示例

//读写文件中的路径问题

//例如读取hello.txt文件

var fs = require(‘fs’);   // 下载文件搜索模块 

// 此处的./相对路径,相对的是执行node命令的路径

// 而不是相对于正在执行的这个js文件来查找hello.txt

fs.readFile(‘./hello.txt’,’utf8’,function(err,data)){  //调用方法

if(err){

throw err;

}

console.log(data);

});

读取文件

测试结果:

image.png

代码不变换执行方式:

切换到D盘下执行C盘下03文件:文件路径写全

image.png

报写错误,以大写字母E报异常,因为相对路径错误。

//解决在文件读取中./相对路径的问题

//解决:__dirname、__filename

// __dirname:表示,当前正在执行的js文件所在的目录

// __filename:表示,当前正在执行的js文件的完整路径

console.log(_dirname);

console.log(_filename);//这两个代码始终表示当前执行文件所在的目录,并不会随在不同目录下执行而变化。 

先进入C盘文件目录下,测试结果如下:

image.png

切到D盘下,执行同样文件,测试结果如下:

image.png

解决方法:

var fs = require(‘fs’);

var filename = _dirname + ‘\\’ + ‘hello.txt’;

fs.readFile(filename,’utf8’,function(err,data)){

if(err){

throw err;

}

console.log(data);

});

C盘下执行结果(无误):

image.png

D盘下执行结果(无误):

image.png

//无论在任何目录下执行文件,读取目录始终正确

相关文章
|
5月前
|
JavaScript API
深入探索fs.WriteStream:Node.js文件写入流的全面解析
深入探索fs.WriteStream:Node.js文件写入流的全面解析
|
3月前
|
JavaScript 前端开发 内存技术
js文件的入口代码及需要入口代码的原因
js文件的入口代码及需要入口代码的原因
49 0
|
4月前
|
前端开发 JavaScript API
前端JS读取文件内容并展示到页面上
前端JavaScript使用FileReader API读取文件内容,支持文本类型文件。在文件读取成功后,可以通过onload事件处理函数获取文件内容,然后展示到页面上。
128 2
前端JS读取文件内容并展示到页面上
|
4月前
|
JavaScript 前端开发 API
Vue学习笔记3:对比纯JavaScript和Vue实现数据更新的实时视图显示
Vue学习笔记3:对比纯JavaScript和Vue实现数据更新的实时视图显示
|
4月前
|
JavaScript 前端开发 数据安全/隐私保护
混淆指定js文件
【9月更文挑战第26天】JavaScript 混淆旨在保护代码知识产权、减小文件体积和提高安全性。方法包括变量名和函数名混淆、代码压缩、控制流平坦化及字符串加密。常用工具如 UglifyJS 和 JScrambler 可实现这些功能。然而,混淆可能带来兼容性和调试困难等问题,需谨慎使用并确保法律合规。
|
3月前
|
JavaScript 前端开发 应用服务中间件
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
215 0
|
4月前
|
移动开发 JavaScript 前端开发
js之操作文件| 12-5
js之操作文件| 12-5
|
4月前
|
JavaScript
Vue3基础(19)___vite.config.js中配置路径别名
本文介绍了如何在Vue 3的Vite配置文件`vite.config.js`中设置路径别名,以及如何在页面中使用这些别名导入模块。
154 0
Vue3基础(19)___vite.config.js中配置路径别名
|
4月前
|
Web App开发 前端开发 JavaScript
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
|
3月前
|
JavaScript 前端开发
【干货分享】JavaScript学习笔记分享
【干货分享】JavaScript学习笔记分享
67 0