Rumah  >  Soal Jawab  >  teks badan

javascript - Tukar rentetan JS bukan standard kepada objek json standard

Saya mempunyai rentetan js berikut

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

Bagaimana dengan cepat menukar aaa menjadi objek Json standard seperti {'a':1,'b':2,'c':3}?

高洛峰高洛峰2685 hari yang lalu381

membalas semua(3)saya akan balas

  • 黄舟

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

    Anda mempunyai salah faham tentang objek JSON standard Atribut JSON standard disertakan dalam petikan berganda sama ada petikan tunggal atau petikan tunggal.

    JSON.parse(str) Parameter str yang diterima di sini mestilah rentetan yang mematuhi format JSON Jika ia tidak mematuhi format JSON, ralat akan dilaporkan. JSON.parse(str) 这里接收的 str 参数要求是符合 JSON 形式的字符串,不符合 JSON 形式会报错。

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

    如果你不想使用 eval

    Jadi mula-mula tambahkan petikan berganda pada sifat objek.

    Jika anda tidak mahu menggunakan eval, anda boleh menggunakan kaedah ini, 🎜
    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));
    🎜SyntaxRalat: JSON.parse: penghuraian buruk🎜

    balas
    0
  • PHP中文网

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

    JSON.parse(aaa);

    JSON.stringify: json =》string
    JSON.parse:string =》json
    可参考:https://m.baidu.com/from=1086...#🎜🎜 #

    balas
    0
  • 天蓬老师

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

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

    balas
    0
  • Batalbalas