nodejs 之创建文件
创建文件
专注前端4年,一直以来奋战在搬砖的一线,从事着后台系统、PC端、移动端的开发,然而市场的发展速度确实让人有些许瞠目结舌,前端框架层出不穷,无论是 JS 框架(react.js、vue.js 、angular.js 、react-native、veex……) 还是 UI 框架(Bootstrap、elementUI、iView、vuetify、at-ui、flutter……) 都让我们的大脑不够用,并且每个公司的技术选型和业务不同,所选择的框架都不同,然而苦逼的我们没有办法学会所有,只有在入职公司要啥,我们就快速的学习啥,枪指哪儿,我们就打哪儿。最近准备横向发展一下自己,了解一下被炒的很热但实际市场用的又不是特别多,但是作为一个合格的前端开发人员必须掌握的知识——nodejs。我会将一些平时学习基础资料整理,顺便当做笔记记录一下,和大家一起分享学习。
fs 模块创建文件
// mkdir.js
const mkdir = require("./module");
mkdir("demo/test", err => {console.log(err);
});mkdir("demo01", err => {console.log(err);
});mkdir("demo02/demo03/demo04", err => {console.log(err);
});
自定义创建文件 modules
// modules.js
const fs = require("fs");
const path = require("path");function mkdirs(pathname, callback) {// 需要判断是否是绝对路径(避免不必要的bug)pathname = path.isAbsolute(pathname) ? pathname : path.join(__dirname, pathname);// 获取相对路径pathname = path.relative(__dirname, pathname);let floders = pathname.split(path.sep); // path.sep 避免平台差异带来的buglet pre = "";floders.forEach(floder => {try {// 没有异常,文件已经创建,提示用户改文件已经创建let _stat = fs.statSync(path.join(__dirname, pre, floder));let hasMkdir = _stat && _stat.isDirectory();if (hasMkdir) {callback && callback(`文件${floder}已经存在,不能重复创建,请重新创建`);}} catch (error) {// 抛出异常,文件不存在则创建文件try {// 避免父文件还没有创建的时候先创建子文件所出现的意外bug,这里选择同步创建文件fs.mkdirSync(path.join(__dirname, pre, floder));callback && callback(null);} catch (error) {callback && callback(error);}}pre = path.join(pre, floder); // 路径拼合});
}module.exports = mkdirs;
小结
注释已经写得很清楚了,就不过多的解释了,仅仅是学习笔记,相对简单易懂,希望各位看官可以提供更好的方法以供参考,不喜勿喷……
其它前端学习资料和文章如下
其它前端性能优化:
- 图片优化——质量与性能的博弈
- 浏览器缓存机制介绍与缓存策略剖析
- webpack 性能调优与 Gzip 原理
- 本地存储——从 Cookie 到 Web Storage、IndexDB
- CDN 的缓存与回源机制解析
- 服务端渲染的探索与实践
- 解锁浏览器背后的运行机制
- DOM 优化原理与基本实践
- Event Loop 与异步更新策略
- 回流(Reflow)与重绘(Repaint)
- Lazy-Load
- 事件的节流(throttle)与防抖(debounce
- 前端学习资料下载
- 技术体系分类
前端技术架构体系(没有链接的后续跟进):
- 调用堆栈
- 作用域闭包
- this全面解析
- 深浅拷贝的原理
- 原型prototype
- 事件机制、
- Event Loop
- Promise机制、
- async / await原理、
- 防抖/节流原理
- 模块化详解、
- es6重难点、
- 浏览器熏染原理
- webpack配置(原理)
- 前端监控、
- 跨域和安全、
- 性能优化
- VirtualDom原理、
- Diff算法、
- 数据的双向绑定
- [TCP协议(三次握手、四次挥手)](https://blog.csdn.net/woleigequshawanyier/article/details/85223642
- DNS域名解析
其它相关
- 前端学习资料下载
- 技术体系分类
- react-native 实战项目学习
- react-naitve 采坑笔记
nodejs 之创建文件相关推荐
- nodejs fs创建文件_节点FS – NodeJS创建文件,读取文件,写入文件
nodejs fs创建文件 Node FS stands for NodeJS File System module. In my previous post, we have already dis ...
- node 修改html文件路径,好程序员前端教程-nodejs如何读取文件夹目录的内容
好程序员前端教程-nodejs如何读取文件夹目录的内容? 首先,nodejs中文件,目录的操作,我们对fs文件系统分为两类操作,第一类是xxx方法,第二类是xxxSync方法.所有的fs操作几乎都是这 ...
- .rpt文件内容读取java_好程序员前端教程-nodejs如何读取文件夹目录的内容
好程序员前端教程-nodejs如何读取文件夹目录的内容? 首先,nodejs中文件,目录的操作,我们对fs文件系统分为两类操作,第一类是xxx方法,第二类是xxxSync方法.所有的fs操作几乎都是这 ...
- nodejs webserver创建
// 使用 require 指令来载入 http 模块 const http = require('http') // 使用 fs 模块,来读取文件 const fs = require('fs')/ ...
- 解决NodeJS在读写文件时,一直显示写入失败
今天跟着B站上黑马的NodeJS的视频学习,跟着老师进行敲代码,结果老师那边显示读出成功,写入也成功,当我自己去敲代码练习的时候,读文件没有问题,但是练习写入文件的时候,黑窗口运行的时候,打印了写入失 ...
- geany怎么创建文件夹_SAP事务码太多,记不住怎么办?
不同于国产财务软件,SAP提供了直接输入命令的便捷功能,例如在命令框中输入F-02可以直接进入到财务记账界面,使用起来非常方便. 但是对于很多SAP初学者来说,SAP有太多的事务代码了,真的好难记住呀 ...
- Linux 文件夹详情,linux使用命令创建文件夹以及里面的文件,详情介绍
工作学习的过程中需要用到linux系统,今天需要使用命令创建目录并在目录中创建文件,然后添加自己的内容到文件中,我们一起看看这整个过程应该怎么做. 工具/材料 ubuntu16.04操作系统. 操作方 ...
- lua创建文件和文件夹
创建文件夹: os.execute('mkdir xx') 创建文件: f = assert(io.open('a.tmp','w')) f:write('test') f:close() 转载于:h ...
- 磁盘加密软件TrueCrypt知识大全(二)之创建文件型加密卷
磁盘加密软件TrueCrypt知识大全(二)之创建文件型加密卷 1.在"TrueCrypt"窗口中选择"创建加密卷(C)"按钮,在向导中选择"创建文件 ...
- 文件魔术数字_如何使用魔术脚手架自动创建文件并节省时间
文件魔术数字 Before we begin: This article uses JavaScript / Node.js example code, but you can port these ...
最新文章
- Python学习笔记17:标准库之数学相关(math包,random包)
- 在Windows C程序中使用Unicode编码
- C# 创建Word项目标号列表、多级编号列表
- rufus中gpt和mrb磁盘_UEFI/BIOS/MBR/GPT启动过程详解与常见系统启动问题
- web服务压力测试)有效的压力测试系统将应用以下这些关键条件
- chrome控制台如何把vw显示成px_【CSS】rem,em,px的区别和使用场景
- 22岁大学生获谷歌天价offer,击败6000人年薪百万
- 数组实例的fill()方法 fill()方法
- mysql主从不同步的解决方式
- 采用dlopen、dlsym、dlclose加载动态链接库
- Hadoop学习之web查看HADOOP以及文件的上传和下载
- C4D新建立方体对象不显示?
- php开发微信小程序教程,从零开始开发微信小程序步骤(三)
- 前端面试问题答案汇总--基础版
- cc美团_项目注册界面实现
- 电脑怎么用c语言写丘比特,C语言丘比特#includebr/#includebr/ 爱问知识人
- 爬取百度地图店家信息
- Nginx反向代理及域名解析访问本地项目
- 御坂坂的C++学习之路(1)
- mysql数据库表格数据类型_MYSQL数据库数据表字段类型含义解释