【发布时间】:2020-06-22 00:05:18
【问题描述】:
????我需要一点帮助来更好地理解 JSON。
当我用类对象对数组进行字符串化然后将其解析回来时,看起来数组丢失了类实例。即使在解析 JSON 数据后,我是否可以保留课程,如果可以,如何?为什么会发生这种情况?
代码如下:
class Account {
constructor(site, login, pass) {
this.site = site,
this.login = login
this.pass = pass
}
}
const accounts = [
new Account("website1.com", "email1@gmail.com", "12345"),
new Account("website2.com", "email2@gmail.com", "23456")
]
console.log('BEFORE', accounts)
const string = JSON.stringify(accounts)
console.log(string)
const parseString = JSON.parse(string)
console.log('AFTER', parseString)
控制台显示如下:
BEFORE (2) [Account, Account]
{string: "[{"site":"website1.com","login":"email1@gmail.com"….com","login":"email2@gmail.com","pass":"23456"}]"}
AFTER (2) [{…}, {…}]
为了清楚起见,是否可以在 JSON.parse()` 后面加上 [Account, Account]?
如果我的解释不清楚,请告诉我。 非常感谢!
【问题讨论】:
-
传入一个自定义的reviver 参数,但请注意,它不是一个特别健壮的 API
标签: javascript json