【发布时间】:2015-03-27 17:23:49
【问题描述】:
我正在寻找一种方法来重新排序 javascript 中的数组,将元素移动到特定位置。
我的数组是:
[
{
"id": 105142,
"parent": null,
"created": "2015-03-20T17:21:33.013+01:00"
},
{
"id": 105150,
"parent": null,
"created": "2015-03-20T19:02:09.079+01:00"
},
{
"id": 105160,
"parent": null,
"created": "2015-03-20T22:15:06.543+01:00"
},
{
"id": 105190,
"parent": null,
"created": "2015-03-21T19:39:19.441+01:00"
},
{
"id": 105193,
"parent": null,
"created": "2015-03-22T01:42:00.974+01:00"
},
{
"id": 105195,
"parent": 105193,
"created": "2015-03-22T11:05:20.033+01:00"
},
{
"id": 105197,
"parent": null,
"created": "2015-03-22T11:06:15.241+01:00"
},
{
"id": 105203,
"parent": 105193,
"created": "2015-03-22T22:22:48.833+01:00"
}
]
我必须将 parent !== null 的项目移到其父项下。 结果将是:
[
{
"id": 105142,
"parent": null,
"created": "2015-03-20T17:21:33.013+01:00"
},
{
"id": 105160,
"parent": 105142,
"created": "2015-03-20T22:15:06.543+01:00"
},
{
"id": 105150,
"parent": null,
"created": "2015-03-20T19:02:09.079+01:00"
},
{
"id": 105190,
"parent": null,
"created": "2015-03-21T19:39:19.441+01:00"
},
{
"id": 105193,
"parent": null,
"created": "2015-03-22T01:42:00.974+01:00"
},
{
"id": 105195,
"parent": 105193,
"created": "2015-03-22T11:05:20.033+01:00"
},
{
"id": 105203,
"parent": 105193,
"created": "2015-03-22T22:22:48.833+01:00"
},
{
"id": 105197,
"parent": null,
"created": "2015-03-22T11:06:15.241+01:00"
}
]
是否有任何 js 库可以有效地移动项目而无需大量递归?
【问题讨论】:
-
你为什么害怕递归?
标签: javascript arrays