文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

node的path路径模块怎么使用

2023-07-05 03:59

关注

这篇文章主要介绍了node的path路径模块怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇node的path路径模块怎么使用文章都会有所收获,下面我们一起来看看吧。

node的path模块

前言:通过这篇文章你会了解node的path内置模块的一些API
如果需要的话可到node官网查看。当然实践大于理论
所以我准备了一个案例,用于练手

1.path路径模块初认识

path 模块是 Node.js 官方提供的、用来处理路径的模块。它提供了一系列的方法和属性,用来满足用户对路径的处理需求。

2.path模块的API

2.1 path.join()

path.join() 方法,用来将多个路径片段拼接成一个完整的路径字符串

语法格式为
node的path路径模块怎么使用

…paths(string) 路径片段的序列 ,就是你需要拼接的所有路径系列。

需要注意的是这个返回的值为string

//引入path模块const path=require("path")//书写要拼接的路径const pathStr=path.join('/a','/b/c','../','./d','e')console.log(pathStr)

node的path路径模块怎么使用

2.2 path.basename()

使用 path.basename() 方法,可以获取路径中的最后一部分,经常通过这个方法获取路径中的文件名

语法格式
node的path路径模块怎么使用

const path=require("path")const  fpath='./a/b/c/index.html'var fullname=path.basename(fpath)console.log(fullname)//获取指定后缀的文件名const namepath=path.basename(fpath,'.html')console.log(namepath)

node的path路径模块怎么使用

2.3 path.extname()

path.extname()用于获取路径中的文件扩展名

格式为
node的path路径模块怎么使用

const path=require("path")const fpath='./a/b/c/d/index.html'const ftext =path.extname(fpath)console.log(ftext)

node的path路径模块怎么使用

3.时钟案例实践

将所提供的代码(一个文件同时拥有html,css,js)进行拆分
拆分成三个文件分别为index.html index.css index.js并将其存放到一个准备好的文件中

源代码
点击右键查看源代码

3.1实现步骤

创建两个正则表达式,分别用来匹配 <style><script> 标签
2. 使用 fs 模块,读取需要被处理的 HTML 文件
3. 自定义 resolveCSS 方法,来写入 index.css 样式文件
4. 自定义 resolveJS 方法,来写入 index.js 脚本文件
5.自定义 resolveHTML 方法,来写入 index.html 文件

3.1.1步骤1 - 导入需要的模块并创建正则表达式

const path=require('path')const fs=require('fs')const regStyle=/<style>[\s\S]*<\/style>/const scriptruler=/<script>[\s\S]*<\/script>///需要读取的文件fs.readFile(path.join(__dirname,'/static/index.html'),'utf-8',function(err,dateStr){    if(err){        return console.log("读取失败")    }   resolveCSS(dateStr)   resolveHTML(dateStr)   resolveJS (dateStr)})

3.1.2 自定义 resolveCSS resolveHTML resolveJS 方法

function resolveCSS(htmlStr){    const r1=regStyle.exec(htmlStr)    const newcss=r1[0].replace('<style>','').replace('</style>','')    //将匹配的css写入到指定的index.css文件中    fs.writeFile(path.join(__dirname,'/static/index.css'),newcss,function(err){        if(err) return console.log("导入失败"+err.message)        console.log("ojbk")    })}function resolveJS(htmlStr){    const r2=scriptruler.exec(htmlStr)    const newcss=r2[0].replace('<script>','').replace('</script>','')    //将匹配的css写入到指定的index.js文件中    fs.writeFile(path.join(__dirname,'/static/index.js'),newcss,function(err){        if(err) return console.log("导入失败"+err.message)        console.log("ojbk")    })}function  resolveHTML(htmlStr){    const newhtml=htmlStr    .replace(regStyle,'<link rel="stylesheet" href="./index.css">')    .replace(scriptruler,'<script src="./index.js"></script>')    //将匹配的css写入到指定的index.html文件中    fs.writeFile(path.join(__dirname,'/static/index2.html'),newhtml,function(err){        if(err) return console.log("导入失败"+err.message)        console.log("ojbk")    })}

最终的结果就是在指定的文件中将样式剥离开

但是那个最开始的index.html由于是包含全部的代码,而后
在拆分样式的时候存放的位置还是原来的,所以最终index.html的代码不变

node的path路径模块怎么使用

关于“node的path路径模块怎么使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“node的path路径模块怎么使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯