Files
gzh/analyze-png.js

40 lines
1.1 KiB
JavaScript
Raw Normal View History

2026-01-06 15:03:14 +08:00
const fs = require('fs');
const path = require('path');
// 读取src/assets目录
const assetsDir = path.join(__dirname, 'src', 'assets');
fs.readdir(assetsDir, (err, files) => {
if (err) {
console.error('读取目录失败:', err);
return;
}
// 过滤出PNG图片
const pngFiles = files.filter(file => file.endsWith('.png'));
// 获取每个文件的大小
const fileInfo = pngFiles.map(file => {
const filePath = path.join(assetsDir, file);
const stats = fs.statSync(filePath);
return {
name: file,
size: stats.size,
sizeKB: (stats.size / 1024).toFixed(2)
};
});
// 按大小排序(从大到小)
fileInfo.sort((a, b) => b.size - a.size);
// 输出结果
console.log('src/assets目录下PNG图片大小分析从大到小:');
console.log('文件名'.padEnd(25), '大小(字节)'.padEnd(15), '大小KB');
console.log('-' .repeat(60));
fileInfo.forEach(file => {
console.log(file.name.padEnd(25), file.size.toString().padEnd(15), file.sizeKB);
});
console.log('-' .repeat(60));
console.log(`总计: ${pngFiles.length} 个PNG图片`);
});