a标签的download属性配合Blob数据对象可以实现导出html文件

<script>
        let html='<div style="color:#f60">++++5555+</div>'
        
        let downloadF = function (content, filename) {
            // 创建a标签
            let linkNode = document.createElement('a');
            linkNode.download = filename;
            linkNode.style.display = 'none';
            // 利用Blob对象将字符内容转变成二进制数据
            let blob = new Blob([content]);
            linkNode.href = URL.createObjectURL(blob);
            // 点击
            document.body.appendChild(linkNode);
            linkNode.click();
            // 移除
            document.body.removeChild(linkNode);
        };
        $('#add').click(function(){
            downloadF(html,'aa.html')//这里如果不带有后缀。默认是txt格式
        })
    </script>

//**.txt, .json等内容是文本的文件,都可以导出。

其他方法:node抓取文章 生成 https://www.jb51.net/article/123975.htm

让 markdown 生成带目录的 html 文件

  该方法需要编写md文件 

安装

npm install -g i5ting_toc

用法

进入 markdown 文件所在的文件夹

举个栗子:
你的sample.md文件放在桌面上
cd /Users/dora/Desktop/

进入 md 文件所在的文件夹后, 输入命令:

i5ting_toc -f sample.md -o

此时你的桌面上就会出现一个preview的文件夹,简单亲测 格式不是很友好!(最简单的换行没实现)