【问题标题】:String to object in JavascriptJavascript中对象的字符串
【发布时间】:2014-11-19 13:11:37
【问题描述】:

我的函数运行良好:

function sendLeadData(form) {
    return trk(form, {
        firstName: "pan",
    });
}

{firstName : "Pan"} = 一个对象。如果我将其设置为 var 并在函数中传递 var 也可以正常工作。但我需要使用我从一些地图构建的字符串并传递它。我得到了完美的字符串。下面的代码不起作用:

function sendLeadData(form) {
    //code to get str
    alert("str is "+str);------->prints str perfect,also giving result below
    var obj = JSON.parse(str);//If except str I put JSON.parse(JSON.stringify({firstName:"Pan"})) that work fine
    alert("obj is "+obj);

    return trk(form,
        obj
    );
}

str 打印 "{firstName:"Pan"}"。 Error 是抛出的语法错误。

请帮忙。

【问题讨论】:

  • 您需要转义引号 ("{firstName: \"Pan\"}") 或使用备用引号 ('{firstName: "Pan"}')。

标签: javascript string object


【解决方案1】:

JSON 具有更严格的对象表示。键也需要引用:

'{"firstName": "Pan"}'

【讨论】:

    【解决方案2】:

        var obj = {x: 5, y: 6, apple:0, name:'myname'};
        var objToText = JSON.stringify(obj);
        console.log(objToText);
        
        var text = '{"x": 5, "y": 6, "apple":0, "name":"myname"}';
        var textToObj = JSON.parse(text);
        console.log(textToObj);

    【讨论】:

      猜你喜欢
      • 2012-10-11
      • 2013-08-25
      • 2020-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-01
      • 2018-02-08
      • 2014-06-30
      相关资源
      最近更新 更多