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

如何批量获取package.json依赖最新版本制作版本对比Excel表

依赖版本统计Excel生成方案

关于npm-check-updates的使用误区

npm-check-updates(简称ncu)默认执行时仅做版本查询,不会修改任何本地文件,只有加了-u/--upgrade参数时才会改写package.json里的版本号,完全可以用来做版本查询。

操作步骤

  • 第一步:全局安装ncu(已安装可跳过)
npm install -g npm-check-updates
  • 第二步:进入项目根目录,执行命令导出全量依赖的版本数据为JSON文件,该命令会同时读取生产依赖、开发依赖的当前版本和最新版本,不会改动本地任何配置
ncu --all --jsonAll > dep-data.json
  • 第三步:在项目根目录新建gen-excel.js脚本,写入以下代码,作用是把JSON数据转成Excel可直接打开的CSV格式,自动去除版本号前的^/~等范围符号,不需要后续做分列处理
const fs = require('fs');
const rawData = JSON.parse(fs.readFileSync('./dep-data.json', 'utf8'));
const allDependencies = {
  ...rawData.dependencies,
  ...rawData.devDependencies
};
// 按预期表格结构生成行数据
const tableRows = [
  ['依赖包名', '当前已安装版本', '最新发布版本']
];
Object.entries(allDependencies).forEach(([pkgName, versionInfo]) => {
  const currentVer = (versionInfo.current || '').replace(/^[\^~]/, '');
  const latestVer = (versionInfo.latest || '').replace(/^[\^~]/, '');
  tableRows.push([pkgName, currentVer, latestVer]);
});
// 写入CSV文件,加BOM头避免Windows下Excel打开中文乱码
const csvContent = '\ufeff' + tableRows.map(row => row.join(',')).join('\n');
fs.writeFileSync('./依赖版本统计.csv', csvContent, 'utf8');
console.log('文件已生成:依赖版本统计.csv,直接用Excel打开即可');
  • 第四步:执行脚本生成表格文件
node gen-excel.js

执行完成后根目录生成的依赖版本统计.csv可以直接双击用Excel打开,列结构和预期完全一致,无格式错乱问题。

如果需要区分生产依赖、开发依赖,可以在表头新增「依赖类型」字段,遍历依赖时分别标记对应类型即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 11:06:19