js数据结构转化,将string数据转化成json格式

Dyfearl 2019-01-03 02:55:01
谢谢各位大佬指点
...全文
918 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
漠子凉 2019-01-18
  • 打赏
  • 举报
回复

var sourceArr = [
'奴隶社会,非洲,古埃及文明,金字塔',
',亚洲,两河流域文明,汉谟拉比法典',
',,古印度,种姓制度',
',,,佛教的创立',
',欧洲,希腊,希腊城邦',
',,罗马,城邦',
',,,帝国的征服与扩展',
]

function recursiveSource(sourceArr) {
var obj = {}

for (var i = 0; i < sourceArr.length; i++) {
var source = sourceArr[i]
var sourceSplit = source.split(',')

// 获取同级
if(sourceSplit[0] != '') {
obj[sourceSplit[0]] = []
var sourceChildArr = []

// 获取子元素的同级
for (var j = i; j < sourceArr.length; j++) {
var sourceChild = sourceArr[j]
var sourceChildSplit = sourceChild.split(',')

// 获取当前级的子元素
if(j == i) {
sourceChildArr.push(sourceChildSplit.slice(1).join(','))
}
else {
if(sourceChildSplit[0] != '')
{
// 遇到同级就退出当前循环
break
}
else {
// 获取其他子元素
var sourceChildSlice = sourceChildSplit.slice(1).join(',')
sourceChildArr.push(sourceChildSlice)
}
}
}
// 进入递归
obj[sourceSplit[0]].push(recursiveSource(sourceChildArr))
}
}
return obj
}
var recursiveSourceJson = recursiveSource(sourceArr)
前端○萌妹 2019-01-15
  • 打赏
  • 举报
回复
感觉转化不了,毕竟什么规则都没有
射手座cl 2019-01-09
  • 打赏
  • 举报
回复
我没看错的话,只有键没有值吗?
AndroidStudy2018 2019-01-09
  • 打赏
  • 举报
回复
虽然我不懂,但是帮你顶了

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧