【发布时间】:2015-10-04 04:47:24
【问题描述】:
在我的 Node.js 应用程序中,我有一些丑陋的数据:
{"rn":["801"],"destSt":["30089"],"destNm":["95th/Dan Ryan"],"trDr":["5"],"nextStaId":["41430"],"nextStpId":["30276"],"nextStaNm":["87th"],"prdt":["20151003 12:36:48"],"arrT":["20151003 12:38:48"],"isApp":["0"],"isDly":["0"],"flags":[""],"lat":["41.75042"],"lon":["-87.62518"],"heading":["179"]}
如您所见,每个对象属性都莫名其妙地包含一个数组,其值应该直接是该属性的值。
我想将所有内容上移一级,使其看起来像:
{"rn":"801","destSt":"30089","destNm":"95th/Dan Ryan"}
(等)
在任何情况下,这些数组中的任何一个都不会包含一个以上的值。
最好的方法是什么?我试过下划线的展平无济于事。
我不知道如何去谷歌搜索这个。 :)
【问题讨论】:
-
检查jsfiddle.net/tusharj/2z24p8p0 步骤: 1 遍历对象2. 检查值是否为数组且有长度1 3. 如果是,则将数组替换为其元素。
标签: javascript arrays node.js object underscore.js