検索

ホームページ  >  に質問  >  本文

javascript - JSON.stringify によって解析された文字列値は未定義です

msg はオブジェクトです

var descriptionMsg = JSON.stringify(msg);
descriptionMsg は次のように出力されます: {"title":"aaaaaaa","image":"xxxxxx.png","content":"vvvvvv"}弦 ###

But

document.write(descriptionMsg.title);または document.write(descriptionMsg['title']);

はすべて次のように出力されます: unknown

###何故ですか?

仅有的幸福仅有的幸福2825日前929

全員に返信(6)返信します

  • 我想大声告诉你

    我想大声告诉你2017-05-18 10:59:47

    descriptionMsg はすでに文字列であるため、当然、 descriptionMsg.title;
    console.log(msg.title) を使用することはできません。

    返事
    0
  • 怪我咯

    怪我咯2017-05-18 10:59:47

    リーリー

    返事
    0
  • 黄舟

    黄舟2017-05-18 10:59:47

    JSON.stringify()オブジェクトから文字列を解析するために使用されます

    返事
    0
  • PHP中文网

    PHP中文网2017-05-18 10:59:47

    JSON.stringify(obj) はネイティブオブジェクトを渡して文字列を返します。もちろん、JSON.stringify(obj).key を使用して値を取得することはできないため、値を取得したい場合は未定義になります。未変換のネイティブ オブジェクト obj.key または JSON.parse(JSON.stringify(obj)).key を直接使用して、変換された JSON 文字列をネイティブ オブジェクトに解析できます。

    返事
    0
  • 阿神

    阿神2017-05-18 10:59:47

    descriptionMsg は文字列であり、json 形式のオブジェクトではありません。変換するには JSON.parse を使用する必要があります。 JSON.stringify はオブジェクトを文字列に変換しますが、それを逆に使用しました。

    返事
    0
  • 滿天的星座

    滿天的星座2017-05-18 10:59:47

    descriptionMsg は文字列であるため、まず文字列をオブジェクトに変換してから、オブジェクトのプロパティにアクセスする必要があります:
    document.write(JSON.parse(descriptionMsg).title)

    返事
    0
  • キャンセル返事