【发布时间】:2021-10-28 23:49:18
【问题描述】:
任务: 将键数组转换为一个对象,并为每个键分配一个空字符串,例如(“”)。
问题: 键还表示结果对象中不同的深度级别(例如 defaultToolConf.graph.graphApiConf.url 表示对象中的 4 个深度级别)。 每个级别的深度由键字符串中的点 (.) 分隔。
输入(数组):
[
'ADMIN_URL_REGEXP',
'BASE_PATH',
'appName',
'defaultToolConf',
'defaultToolConf.graph',
'defaultToolConf.graph.graphApiConf',
'defaultToolConf.graph.graphApiConf.markerCampaignsUrl',
'defaultToolConf.graph.graphApiConf.markerUrl',
'defaultToolConf.graph.graphApiConf.ndviUrl',
'defaultToolConf.graph.graphLineColors',
'defaultToolConf.query',
'defaultToolConf.query.canExportKml',
'defaultToolConf.query.isExportEnabled',
'defaultToolConf.query.isResizable',
'defaultToolConf.test',
'defaultToolConf.toolsPermissionsPath',
'token',
'token.format',
'token.key',
'token.paths'
]
输出(结果对象):
{
"ADMIN_URL_REGEXP": "",
"BASE_PATH": "",
"appName": "",
"defaultToolConf": {
"graph": {
"graphApiConf": {
"markerCampaignsUrl": "",
"markerUrl": "",
"ndviUrl": ""
},
"graphLineColors": ""
},
"query": {
"canExportKml": "",
"isExportEnabled": "",
"isResizable": ""
},
"test": "",
"toolsPermissionsPath": ""
},
"tokenInterceptor": {
"format": "",
"key": "",
"paths": ""
}
}
到目前为止我做了什么:https://jsfiddle.net/rt279mfz/
我设法创建了一个包含多个深度对象的结果对象。
问题: 我必须将键值分配为空对象 {}。这意味着我必须遍历所有对象键(在多个深度)并将值重新分配为空字符串而不是空对象。不知道有没有可能。
我在结果对象中有重复键。
【问题讨论】:
标签: javascript arrays object key