我有一个包含对象和数组的javascript数组,包含我在Mirth 3.5.1中的频道源中的一些对象。例如:
var sql= "SELECT prop1,prop2,prop3,prop4,prop5,prop6 from ANYTABLE";
var res = dbConn.executeCachedQuery(sql);
var Array1 = [];
Obj1 = {
Prop1: res.getString("Prop1"),
Prop2: res.getString("Prop2"),
Prop3: res.getString("Prop2"),
Array2:[
{
Prop4:res.getString("Prop4"),
Prop5:res.getString("Prop5"),
Prop6:res.getString("Prop6"),
}
]
}
Array1.push(Obj1);
logger.info(Array1) //??
现在,我无法使用位于仪表板屏幕下的服务器日志中的logger.info()来查看Array1对象的内容。
有没有解决办法或技巧呢?
答案 0 :(得分:1)
首先将其转换为字符串:
logger.info(JSON.stringify(Array1));
您可能还需要确保JavaScript中的所有对象而不是Java对象,因为JSON.stringify需要对象来实现toJSON方法。
Obj1 = {
Prop1: String(res.getString("Prop1")),
Prop2: String(res.getString("Prop2")),
Prop3: String(res.getString("Prop3")),
Array2: [
{
Prop4: String(res.getString("Prop4")),
Prop5: String(res.getString("Prop5")),
Prop6: String(res.getString("Prop6")),
}
]
}