const fs = require('fs');
// 生成随机值的函数
function getRandomValue() {
const randomNum = Math.floor(Math.random() * 100); // 生成 0 到 99 的随机数
return `random-${randomNum}`;
}
// 递归替换 JSON 对象中的值为随机值
function randomizeJsonValues(obj) {
if (typeof obj === 'object' && obj !== null) {
for (const key in obj) {
if (obj.hasOwnProperty(key)) {
if (typeof obj[key] === 'object') {
randomizeJsonValues(obj[key]);
} else {
obj[key] = getRandomValue();
}
}
}
}
}
// 读取 JSON 文件并处理
fs.readFile('data.json', 'utf8', (err, data) => {
if (err) {
console.error('读取文件失败:', err);
return;
}
try {
const jsonData = JSON.parse(data); // 解析 JSON 数据
randomizeJsonValues(jsonData); // 执行随机值替换
// 写入处理后的数据到新文件
fs.writeFile('data_desensitized.json', JSON.stringify(jsonData, null, 2), (err) => {
if (err) {
console.error('写入文件失败:', err);
} else {
console.log('处理完成,结果已写入 data_desensitized.json');
}
});
} catch (parseError) {
console.error('解析 JSON 失败:', parseError);
}
});
js对json数据内容进行简单脱敏
于 2024-12-02 19:35:52 首次发布
1085

被折叠的 条评论
为什么被折叠?



