1. ホーム
  2. javascript

[解決済み] 文字列をJSONオブジェクトに変換する

2022-04-24 22:26:03

質問

JSに文字列をJSONと認識させるにはどうしたらいいですか?

JSONオブジェクトが渡された場合のみ動作する関数があります。JSONと同じフォーマットの文字列を渡すと、それは動作しません。そこで、この関数に渡された文字列をJSONであると思わせたいのです。文字列は確かにJSONの形式をしている。

また、次のようなことも試してみました。Ajaxで文字列を入力し、 "handle as" パラメータに "JSON" を指定して、その結果を関数に渡したらうまくいきました。

というわけで、問題は文字列にあるのではないと推論しました。この文字列をJSONに変換するにはどうすればよいのでしょうか?Ajaxリクエストで同じ文字列を取得し、それを関数に渡すとうまくいきますが、直接渡すとうまくいかないのです。

文字列は以下の通りです。

  {
     "data": [
   {
  "id": "id1",
      "fields": [
        {
          "id": "name1",
          "label": "joker",
          "unit": "year"
        },
         {"id": "name2", "label": "Quantity"},
    ],
      "rows": [    data here....

and closing braces..

解決方法は?

var obj = JSON.parse(string);

ここで string は、あなたのjson文字列です。