4

私はjavascriptを初めて使用するので、このようなもののいくつかがどのように機能するかを学びます。

次のような文字列があります。["{\"name\":\"name\"}","{\"name\":\"Rick\"}"]

JSON.parse()を使用すると、nameのプロパティを持つオブジェクトの配列が返されませんか?

私が得たのは配列内の2つの要素ですが、それらは単なるJSON文字列です。プロパティ名を持つオブジェクトではありません。私は何が欠けていますか?

[編集]オブジェクトをそのまま配列に渡すのではなく、オブジェクトに対してstringify()を呼び出して、それを配列に渡していました。次に、配列をstringify()します。私はstringifyを文字列化していたため、エスケープ文字が配置されていました:)

4

3 に答える 3

6

JSON.parse()を使用すると、nameのプロパティを持つオブジェクトの配列が返されませんか?

いいえ、JSONは2つの文字列を含む配列を定義しているようです。

これは、2つの文字列を含む配列のJSONです。

[
    "{\"name\":\"name\"}",
    "{\"name\":\"Rick\"}"
]

JavaScript文字列リテラル形式では、それは'["{\"name\":\"name\"}","{\"name\":\"Rick\"}"]'です。

これは、2つのオブジェクトを含む配列のJSONです。

[
    {
        "name": "name"
    },
    {
        "name": "Rick"
    }
]

JavaScript文字列リテラル形式では、それはになります'[{"name":"name"},{"name":"Rick"}]'

于 2012-11-28T13:53:07.527 に答える
2

私はそのsholuldが次のように来ると思います:

"[{\"name\":\"name\"},{\"name\":\"Rick\"}]"
于 2012-11-28T13:57:38.707 に答える
0

ルート要素の周りの(エスケープされた)引用符を失うと、必要なものが得られる可能性があります。

例:

"[{"name":"name"},{"name":"Rick"}]"
于 2012-11-28T13:54:51.960 に答える