You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中如何从xlsx模块返回双引号格式的JSON?

解决xlsx模块返回对象的键提取与JSON格式问题

首先澄清一个关键点:xlsx.utils.sheet_to_json返回的是JavaScript对象数组,不是JSON字符串。你看到的单引号、无引号键是Node.js打印对象时的格式,而非实际数据结构——Object.keys本来就可以直接作用于这些JS对象,不需要所谓的“双引号格式JSON”。

直接提取对象键

直接对返回的对象使用Object.keys即可,示例代码:

const XLSX = require('xlsx');
// 读取文件并解析工作表
const workbook = XLSX.readFile('你的文件.xlsx');
const targetSheet = workbook.Sheets[workbook.SheetNames[0]];
const sheetData = XLSX.utils.sheet_to_json(targetSheet);

// 提取第一个对象的所有键
const keys = Object.keys(sheetData[0]);
console.log(keys); // 输出 ["student_Id", "phone_number", "f_name", "l_name", "address"]

获取双引号格式的JSON字符串

如果确实需要输出或存储标准JSON格式(双引号键和值),用JSON.stringify转换即可:

const standardJson = JSON.stringify(sheetData, null, 2);
console.log(standardJson);
// 输出结果就是你需要的双引号格式:
// [
//   {
//     "student_Id": 1,
//     "phone_number": 87654321,
//     "f_name": "Barns",
//     "l_name": "Illinois",
//     "address": "Denmark kurkum mohao street 88 bldg. 29"
//   },
//   {
//     "student_Id": 3,
//     "f_name": "Charlie"
//   }
// ]

内容的提问来源于stack exchange,提问作者b_a9f

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 11:55:18