首页
零基础教程
分类浏览
编 程
Sentinel
Go语言
C语言
汇编语言
Android
Java工具库
Spring Cloud Alibaba
Spring Cloud
Spring Data
Spring Boot
Spring Batch
JSP/Servlet
Hadoop
Dubbo
J2Cache
Hibernate
OpenJPA
MyBatis
ShardingSphere
Freemarker
Thymeleaf
Activiti
POI
JMail
Log4j
LogBack
Dom4j
XML
RxJava
JasperReport
JUnit
JMock
Apache Commons
HttpComponents
CGLib
WebSocket
ESAPI
设计模式
前 端
CSS/CSS3
HTML5
JavaScript
JQuery
DHTMLX
浏览器
HTML
前端小知识
Vue.js
NodeJS
ECharts
Less
UmiJS
React
Ant Design
Bootstrap
uni-app
JS-XLSX
数据库
SQL
PL/SQL
MySQL
Oracle
Redis
SQLite
MongoDB
Zookeeper
H2
服务器
Podman
Prometheus
Tomcat
JBoss
RocketMQ
Docker
Nginx
RabbitMQ
其 他
程序员
Maven
SVN
Git
UML
Windows
办公软件
Axure
Jenkins
HTTP
macOS
Java
Spring
Linux
AI
代码片段
Get小技能
面试题
开发工具
<html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>SheetJS 教程</title> <!-- 引入 SheetJS 库 --> <script src="https://www.hxstrive.com/cdn/libs/SheetJS/0.20.3/xlsx.full.min.js"></script> </head> <body> <p> <button type="button" onclick="exportData()">导出数据</button> </p> <script type="text/javascript"> // 示例数据的格式: // [ // { // "id": { // "bioguide": "W000178", // "govtrack": 411351, // "icpsr_prez": 99869 // }, // "name": { // "first": "George", // "last": "Washington" // }, // "bio": { // "birthday": "1732-02-22", // "gender": "M" // }, // "terms": [ // { // "type": "prez", // "start": "1789-04-30", // "end": "1793-03-04", // "party": "no party", // "how": "election" // }, // { // "type": "prez", // "start": "1793-03-04", // "end": "1797-03-04", // "party": "no party", // "how": "election" // } // ] // },... // ] function exportData() { // 获取 JSON 数据并解析 fetch("https://www.hxstrive.com/cdn/resources/sheetjs/sheetjs_executive.json").then(resp => { // 检查请求是否成功(状态码 200-299) if (!resp.ok) { throw new Error(`请求失败:状态码 ${resp.status}`); } // 解析响应体为完整的 JSON 数据 return resp.json(); }).then(data => { // 筛选总统 const prez = data.filter(row => { // 检查是否有总统任期 return row.terms.some(term => { return term.type === "prez"; }); }); // 按首次总统任期排序 prez.forEach(row => { row.start = row.terms.find(term => term.type === "prez").start }); prez.sort((l,r) => l.start.localeCompare(r.start)); // 扁平化对象 const rows = prez.map(row => ({ name: row.name.first + " " + row.name.last, birthday: row.bio.birthday })); // 生成工作表和工作簿 const worksheet = XLSX.utils.json_to_sheet(rows); const workbook = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(workbook, worksheet, "Dates"); // 修复标题 XLSX.utils.sheet_add_aoa(worksheet, [["姓名", "生日"]], { origin: "A1" }); // 计算列宽 const max_width = rows.reduce((w, r) => Math.max(w, r.name.length), 10); worksheet["!cols"] = [ { wch: max_width } ]; // 创建一个XLSX文件并尝试保存为Presidents.xlsx XLSX.writeFile(workbook, "Presidents.xlsx", { compression: true }); }).catch(err => { // 拉取数据失败 console.log(err); }); } </script> </body> </html>
在线代码编辑器
代码编辑区
自动执行
运行
选择模板
选择JS库
预览效果
清空
切换主题
字符数: 0
提示: 输入完整的HTML代码,包括<!DOCTYPE>和<html>标签
更多工具
Base64 加密/解密工具
JSON 格式化工具
密码随机生成工具
哈希值计算工具
时间戳转换工具
图片 & Base64 互转
HTTP 客户端
Websocket 客户端
选择模板
取消
选择库和版本
库
版本
文件
取消
已复制到剪贴板
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
链接
免责声明
隐私政策
其他应用
开源镜像网站
公众号
©2018-2020 hxstrive.com 版权所有 ICP证:
蜀ICP备14031461号-2
川公网安备51010802032098