const fs = require('fs'); const jsonData = [ ]; function parseDate(dateString) { const months = { 'January': 0, 'February': 1, 'March': 2, 'April': 3, 'May': 4, 'June': 5, 'July': 6, 'August': 7, 'September': 8, 'October': 9, 'November': 10, 'December': 11 }; const regex = /(\b\w+ \d{1,2}(?:-\d{1,2})?,? \d{4}\b)/g; const matches = dateString.match(regex); if (matches) { const [start, end] = matches.map(match => { const parts = match.split(' '); const month = months[parts[0]]; const day = parseInt(parts[1].replace(',', ''), 10); const year = parseInt(parts[2], 10); return new Date(year, month, day); }); if (end) { return [formatDate(start), formatDate(end)]; } else { return formatDate(start); } } return null; } function formatDate(date) { const year = date.getFullYear(); const month = String(date.getMonth() + 1).padStart(2, '0'); const day = String(date.getDate()).padStart(2, '0'); return `${year}-${month}-${day}`; } const processedData = jsonData.map(event => { const { info } = event; const { time } = info; const formattedTime = parseDate(time); const formattedInfo = { ...info, date: formattedTime }; return { ...event, info: formattedInfo }; }); try { fs.unlinkSync('data.json'); } catch (err) { console.error('data文件不存在', err); } fs.writeFile('data.json', JSON.stringify(processedData, null, 2), (err) => { console.log(err) });