大佬教程收集整理的这篇文章主要介绍了将JSON.stringify与TypeScript getter / setter结合使用,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
private _major: number; get major(): number { return this._major; } set major(major: number) { this._major = major; }@H_674_2@现在,当我使用JSON.Stringify()方法将对象转换为JSON字符串时,它将使用变量名作为键:_major.
由于我不希望JSON文件的所有键都以下划线作为前缀,因此有可能使TypeScript使用getter方法的名称(如果可用)吗?或者有没有其他方法来使用getter / setter方法,但仍然产生干净的JSON输出?
我知道有些方法可以在将JSON密钥写入字符串输出之前手动修改它们.如果有更简单的解决方案,我很好奇.
Here is a JSFiddle,它演示了当前的行为.
但你可以这样做:
class Version { private _major: number; get major(): number { return this._major; } set major(major: number) { this._major = major; } toJsonString(): String { let json = JSON.Stringify(this); Object.keys(this).filter(key => key[0] === "_").forEach(key => { json = json.replace(key,key.subString(1)); }); return json; } } let version = new Version(); version.major = 2; console.log(version.toJsonString()); // {"major":2}@H_674_2@
以上是大佬教程为你收集整理的将JSON.stringify与TypeScript getter / setter结合使用全部内容,希望文章能够帮你解决将JSON.stringify与TypeScript getter / setter结合使用所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。