如何将点表示法的字符串转换为带有值的嵌套对象-JavaScript?

假设以下是我们的点符号字符串-

const keys = "details1.details2.details3.details4.details5"

以下是我们的数组-

const firsName = "David";

要变成嵌套对象,请使用split('。')和map()的概念。

示例

以下是代码-

const keys = "details1.details2.details3.details4.details5"
const firsName = "David";
var tempObject = {};
var container = tempObject;
keys.split('.').map((k, i, values) => {
   container = (container[k] = (i == values.length - 1 ? firsName : {}))
});
console.log(JSON.stringify(tempObject, null, ' '));

要运行上述程序,您需要使用以下命令-

node fileName.js.

在这里,我的文件名为demo227.js。

输出结果

输出如下-

PS C:\Users\Amit\JavaScript-code> node demo227.js
{
 "details1": {
  "details2": {
   "details3": {
    "details4": {
     "details5": "David"
    }
   }
  }
 }
}
猜你喜欢