Skip to content

如何使用JavaScript将JSON对象保存到文件中?

JSON对象是一种常见的存储和交换数据的方式。在Node.js环境或浏览器中,将JSON对象保存到文件中通常非常有用。幸运的是,这两种情况都不是特别困难。

在Node.js中将JSON对象保存到文件中

Node.js提供了一个名为fs内置模块,允许您使用文件系统。您可以使用fs.writeFileSync()方法将JSON对象写入文件中。要将JSON对象转换为字符串,可以使用JSON.stringify()。最后,您应该指定文件扩展名.json

import { writeFileSync } from 'fs';

const JSONToFile = (obj, filename) =>
  writeFileSync(`${filename}.json`, JSON.stringify(obj, null, 2));

JSONToFile({ test: 'is passed' }, 'testJsonFile');
// 将对象写入'testJsonFile.json'文件中

在浏览器中将JSON对象保存到文件中

在浏览器中,您可以使用BlobURL.createObjectURL()来创建一个可下载的文件。您可以使用Document.createElement()来创建一个锚元素a),设置其hrefdownload属性,然后触发点击事件以下载文件。

const JSONToFile = (obj, filename) => {
  const blob = new Blob([JSON.stringify(obj, null, 2)], {
    type: 'application/json',
  });
  const url = URL.createObjectURL(blob);
  const a = document.createElement('a');
  a.href = url;
  a.download = `${filename}.json`;
  a.click();
  URL.revokeObjectURL(url);
};

JSONToFile({ test: 'is passed' }, 'testJsonFile');
// 将对象下载为 'testJsonFile.json' 文件