recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Convertir une chaîne JS non standard en un objet JSON standard

J'ai la chaîne js suivante

var aaa='{a:1,b:2,c:3}';

Comment convertir rapidement aaa en un objet Json standard comme {'a':1,'b':2,'c':3} ?

高洛峰高洛峰2777 Il y a quelques jours478

répondre à tous(3)je répondrai

  • 黄舟

    黄舟2017-05-18 11:00:23

    Vous avez une mauvaise compréhension de l'objet JSON standard. Les attributs du JSON standard sont placés entre guillemets doubles. Ni les guillemets simples ni les guillemets simples ne fonctionneront.

    JSON.parse(str) Le paramètre str reçu ici doit être une chaîne conforme au format JSON. S'il n'est pas conforme au format JSON, une erreur sera signalée. JSON.parse(str) 这里接收的 str 参数要求是符合 JSON 形式的字符串,不符合 JSON 形式会报错。

    所以先要将对象的属性加上双引号。

    如果你不想使用 eval

    Alors ajoutez d’abord des guillemets doubles aux attributs de l’objet.

    Si vous ne souhaitez pas utiliser eval, vous pouvez utiliser cette méthode, #🎜🎜#
    var aaa="{a:1, b:2, c:3}";
    function toJSONStr(str) {
      return str.replace(/([$\w]+)\s*:/g, function(_, ){return '"'++'":'});
    }
    function toJSON(str) {
      return JSON.parse(str);
    }
    toJSON(toJSONStr(aaa));
    #🎜🎜#SyntaxError : JSON.parse : mauvaise analyse#🎜🎜#

    répondre
    0
  • PHP中文网

    PHP中文网2017-05-18 11:00:23

    JSON.parse(aaa);

    JSON.stringify : json =》string
    JSON.parse:string=》json
    Veuillez vous référer à : https://m.baidu.com/from=1086...

    répondre
    0
  • 天蓬老师

    天蓬老师2017-05-18 11:00:23

    var result = eval('('+aaa+')');

    répondre
    0
  • Annulerrépondre