Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Chuyển chuỗi dot-notation thành object lồng nhau - JavaScript

Chuỗi "details1.details2.details3.details4.details5" và giá trị "David". Dùng split('.') và map() xây object lồng nhau.

Mã thực hiện

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

Kết quả

{
  "details1": {
    "details2": {
      "details3": {
        "details4": {
          "details5": "David"
        }
      }
    }
  }
}