假设我有一个对象:
const a = {
foo: 123,
bar: 'example'
}
该对象是许多其他对象的一部分,即
const b = {
a: a,
anotherField: "example"
}
实际上,我使用的是TypeScript,所有这些对象都属于同一类,我认为这并不重要。
将b
对象序列化为JSON之后,我需要获取此字符串(即,我只是从中获取foo
字段a
):
{ a: 123, anotherField: "example" }
告诉JSON.stringify()
如何将a
对象转换为字符串的最简单,最优雅的方法是什么?
可能类似于Python
允许的内容。
您可以toJSON
在中定义a
。
如果要被字符串化的对象具有名为toJSON的属性,其值是一个函数,则toJSON()方法将自定义JSON字符串化行为:代替被序列化的对象,由toJSON()方法返回的值将被序列化,而不是被序列化的对象。
(来源:MDN)
例如:
class A {
constructor(foo, bar) {
this.foo = foo;
this.bar = bar;
}
toJSON() {
return this.foo;
}
}
const a = new A(123, "some name");
const b = {
a: a,
anotherField: "example"
};
console.log(JSON.stringify(b)); // "{"a":123,"anotherField":"example"}"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句