Javascript 为谷歌地图信息框创建内容字符串

Javascript 为谷歌地图信息框创建内容字符串,javascript,jquery,object,Javascript,Jquery,Object,我正在构建一个内容字符串以显示在Google Maps信息框中,但没有得到正确的输出: 我的代码: // Create HTML string for infobox var contentString = '<h1>' + park.name + '</h1>' + '<p>At ' + park.name + ' there were:</p>' + '<ul>' + $.ea

我正在构建一个内容字符串以显示在Google Maps信息框中,但没有得到正确的输出:

我的代码:

    // Create HTML string for infobox
    var contentString = '<h1>' + park.name + '</h1>' +
      '<p>At ' + park.name + ' there were:</p>' +
      '<ul>' +
        $.each(cars, function(index, value) {
          console.log(value.name);
          '<li>' + value.name + '</li>'
        });
      '</ul>';
//为infobox创建HTML字符串
var contentString=''+park.name+''+
“在“+park.name+”有:

”+ “
    ”+ 美元。每个(汽车、功能(指数、值){ console.log(value.name); “
  • ”+value.name+”
  • ” }); “
”;
console.log给出了我的实际名称,但我刚刚得到的是在
  • 中输出的内容:

    [对象]


    有什么想法吗?

    你不能这样做一个带循环的字符串。 您需要将其拆分并将值附加到循环中的
    contentString
    ,如下所示:

    var contentString = '<h1>' + park.name + '</h1>' +
        '<p>At ' + park.name + ' there were:</p>' +
        '<ul>';
    
    $.each(cars, function (index, value) {
        console.log(value.name);
        contentString += '<li>' + value.name + '</li>'
    });
    
    contentString += '</ul>';
    
    var contentString=''+park.name+''+
    “在“+park.name+”有:

    ”+ “
      ”; 美元。每个(汽车、功能(指数、值){ console.log(value.name); contentString+='
    • '+value.name+'
    • ' }); contentString+='
    ';
    我猜cars是某种数组/JSON,因此需要对其进行迭代

    假设您的JSON如下所示:

    var data = JSON.parse('{"cars": [{"value":"Ford"}, {"value":"VW"}, {"value":"Audi"}]}');
    
    for(var i=0;i<data["cars"].length;i++) {
        $("#list").append('<li>' + data["cars"][i]["value"] + '</li>');
    }
    
    您可以这样做:

    var data = JSON.parse('{"cars": [{"value":"Ford"}, {"value":"VW"}, {"value":"Audi"}]}');
    
    for(var i=0;i<data["cars"].length;i++) {
        $("#list").append('<li>' + data["cars"][i]["value"] + '</li>');
    }
    

    对于(var i=0;iIt是一个对象,您必须选择要正确显示它的哪一位,控制台应该告诉您,您可以折叠该对象,但它类似于value[index].name,但为什么这样做:console.log(value.name);?console.log将打印出值、数组、函数、对象——不管你传递了什么。谢谢。我确实认为我可能走错了方向。谢谢。