Javascript中对象的字符串

Javascript中对象的字符串,javascript,string,object,Javascript,String,Object,我有一个功能运行良好: function sendLeadData(form) { return trk(form, { firstName: "pan", }); } {firstName:“Pan”}=一个对象。如果我将其设置为一个var,并在函数中传递var,那么该函数也可以正常工作。但是我需要使用一个字符串,我正在从一些地图上构建它并传递它。我正在完善字符串。下面的代码不起作用: function sendLeadData(form) { //c

我有一个功能运行良好:

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”}”。错误是抛出的语法错误


请帮助。

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

'{"firstName": "Pan"}'

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

'{"firstName": "Pan"}'
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)
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)
您需要转义引号(
“{firstName:\'Pan\'}”
)或使用备用引号(
“{firstName:'Pan'}”
)。您需要转义引号(
“{firstName:\'Pan\'}”
)或使用备用引号(
“{firstName:'Pan'}”
)。