Node.js(2)——压缩前端html

需求:把回车符(\r)和换行符(\n)去掉后,写入到新的html文件中

步骤:

  1. 读取源html文件内容
  2. 正则替换字符串
  3. 写入到新的html文件中

示例:

获取html文件中的内容并检查(同时注意用绝对路径):

复制代码
const fs = require('fs')
const path = require('path')
fs.readFile(path.join(__dirname, '/test/压缩html/html.html'), (err, data) => {
  if (err) {
    console.log(err);
  }
  else {
    console.log(data.toString());
  }
})

此时获取成功!

第二步正则替换字符

观察到换行符已经去掉。

最后写入到其他html文件

完整代码:

复制代码
const fs = require('fs')
const path = require('path')
fs.readFile(path.join(__dirname, '/test/压缩html/html.html'), (err, data) => {
  if (err) {
    console.log(err);
  }
  else {
    //正则替换字符,去掉换行
    const htmlStr = data.toString()
    const result = htmlStr.replace(/[\r\n]/g, ' ')
    console.log(result);

    //写入新文件中
    fs.writeFile(path.join(__dirname, '/test/压缩html/new.html'), result, err => {
      if (err) console.log(err)
      else console.log('写入成功')
    })
  }

})

此时已经写入到新的文件中

相关推荐
西西学代码16 小时前
Flutter---异步编程
开发语言·前端·javascript
拉不动的猪16 小时前
CSS 像素≠物理像素:0.5px 效果的核心密码是什么?
前端·css·面试
前端市界16 小时前
Copilot新模型GPT-5.1太强了!自动生成完美Axios封装,同事都看傻了
前端·前端框架·github
米欧16 小时前
取消当前正在进行的所有接口请求
前端·javascript·axios
浪里行舟16 小时前
告别“拼接”,迈入“原生”:文心5.0如何用「原生全模态」重塑AI天花板?
前端·javascript·后端
OpenTiny社区16 小时前
救命!这个低代码工具太香了 ——TinyEngine 物料自动导入上手
前端·低代码·github
努力学前端Hang16 小时前
移动端跨平台开发深度解析:UniApp、Taro、Flutter 与 React Native 对比
前端·javascript·react native·react.js
前端九哥16 小时前
🚫循环里写return,浏览器当场沉默!
前端·javascript
亲爱的马哥17 小时前
填鸭表单!开箱即用的开源问卷调查系统!
java·前端·低代码·产品经理
米诺zuo17 小时前
nextjs文件路由、路由组
前端·next.js