读取json中的数据,并完成数据重新写入
利用fs.readFileSync('路径','utf8')读取json文件,将接收的文件进行反序列化,在利用fs.writeFileSync('路径',要写入的内容),完成写入
`
const fs = require('fs')
const path = require('path')
let url = path.join(__dirname, 'bd/data.json')
function gts(obj) {
let a = JSON.parse(fs.readFileSync(url, 'utf-8'))
// 判断是否重复
let dd = a.findIndex(item => item.name == obj.name)
if (dd != -1) return console.log('输入的名字重复了')
a.push(obj)
fs.writeFileSync(url, JSON.stringify(a))
console.log('添加成功')
}
gts({ "name": "王2" })
`
遇到的问题
将内容push到新数组中,遇到类似如下问题:
数组.push(内容1,内容2,....)的返回值是数组的长度 导致写入内容是数组的长度