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('写入成功')
    })
  }

})

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

相关推荐
泯泷3 小时前
手搓JSVMM第 8 篇:函数调用:参数、返回值与调用帧
前端·javascript·前端框架
Sherotree3 小时前
Google Antigravity——Agent 被提到主界面
前端·ide·后端·edge浏览器
里欧跑得慢4 小时前
Flutter 像素级还原:设计稿到代码的视觉无损转换技巧
前端·css·flutter·web
里欧跑得慢4 小时前
Flutter 三方库 function_tree — 鸿蒙应用开发中的动态数学公式解析与计算神器,实现鸿蒙深度适配下的复杂函数逻辑运行时求值实战(适配鸿蒙 HarmonyOS Next ohos)
android·前端·安全·flutter·华为·harmonyos
苏灿烤鱼4 小时前
没有机密文件,也没有付费数据,在浏览器里造一颗"间谍卫星"
前端·javascript·github
泯泷5 小时前
手搓JSVM第 5 篇:写第一个编译器:从 AST 生成 IR
前端·javascript·算法
泯泷5 小时前
手搓JSVM第 7 篇:控制流:if、while 与 jump
前端·javascript·算法
泯泷5 小时前
手搓JSVM第 6 篇:把 IR 编成字节码:emit 与 label fixup
前端·javascript·算法
泯泷5 小时前
手搓JSVM第 3 篇:从栈式 VM 到寄存器式 VM:为什么我们选择寄存器
前端·javascript·算法
泯泷5 小时前
第 4 篇:让 VM 支持变量:Slot、Environment 与 TDZ
前端·javascript·算法