Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

ドット表記の文字列を値(JavaScript)を持つネストされたオブジェクトに変換するにはどうすればよいですか?


以下がドット表記の文字列であるとしましょう-

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

そして、以下は私たちの配列です-

const firsName = "David";

ネストされたオブジェクトに変換するには、map()とともにsplit(‘。’)の概念を使用します。

以下はコードです-

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"
    }
   }
  }
 }
}

  1. 文字列をJavaScriptオブジェクトに変換する方法は?

    以下は、文字列をJavaScriptオブジェクトに変換するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &nbs

  2. JavaScriptを使用してオブジェクトを単一のオブジェクト配列にマージする方法は?

    以下は、オブジェクトを単一のオブジェクト配列にマージするコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>