![](/img/trans.png)
[英]how to convert array of integers into hex string and vice versa in javascript
[英]How to derive a JSON string of JavaScript function's properties (and vice versa)?
假设我有这样的JavaScript函数...
function Object1() {
this.var1;
this.var2;
this.var3;
this.method1 = function() {
this.var3 = this.var1 + this.var2;
}
}
...并创建一个实例:
var obj1 = new Object1();
obj1.var1 = 1;
obj1.var2 = 2;
obj1.method1();
基于obj1 ,我想从函数Object1的所有实例变量创建一个JSON字符串。 显然,预期的JSON字符串应如下所示:
{"var1" : 1, "var2" : 2, "var3" : 3}
两个问题:
1.)是否有一种更优雅的方式在Object1函数中手动实现to_json()方法,该方法创建所有实例变量的JSON对象并对该JSON对象调用JSON.stringify()?
2)在这方面,是否存在一种更优雅的方法来基于上面示例显示的JSON字符串创建Object1函数的实例,以便在函数Object1上手动实现from_json()方法,该方法在该JSON字符串上调用JSON.parse() ,对生成的JSON对象进行迭代,并将每个JSON值分配给相应的实例变量。
我不确定为什么要使用自定义的to_json和from_json方法,但是如果您只想获取对象的公共变量及其数据的详细信息,则可以使用JSON.stringify且不会出现任何问题,它也可以处理对象的嵌套,像这样
function Object1() {
this.var1;
this.var2;
this.var3;
this.var4;
this.method1 = function() {
this.var3 = this.var1 + this.var2;
}
}
var obj1 = new Object1();
obj1.var1 = 1;
obj1.var2 = 5;
obj1.var4 = new Object1();
obj1.var4.var1 = 2;
obj1.var4.var2 = 3;
obj1.method1();
obj1.var4.method1();
JSON.stringify(obj1);
因此执行此操作后,您将获得"{"var1":1,"var2":5,"var4":{"var1":2,"var2":3,"var3":5},"var3":6}"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.