将javascript数组转换为html<;李>;

将javascript数组转换为html<;李>;,javascript,arrays,json,arraylist,Javascript,Arrays,Json,Arraylist,我从json中获得了一个数组,我需要将每个项目放在html的中 大概是这样的: names : {john, paul, ringo,george} into <li>john</li>.. 名字:{约翰、保罗、林戈、乔治} 变成约翰。。 我的代码: <div id="demo"></div> 脚本: function onLocationsReceived(data) { console.log("recievd"); for

我从json中获得了一个数组,我需要将每个项目放在html的
  • 大概是这样的:

    names : {john, paul, ringo,george}
    into <li>john</li>..
    
    名字:{约翰、保罗、林戈、乔治}
    变成约翰。。
    
    我的代码:

    <div id="demo"></div>
    
    
    
    脚本:

    function onLocationsReceived(data) {
      console.log("recievd");
    
      for (var i = 0; i < data[0].Sensors.length; i++) {
        var sensorNames = data[0].Sensors[i].Name;
        document.getElementById("demo").innerHTML = sensorNames;
        console.log(sensorNames);
      }
    }
    
    函数onLocationsReceived(数据){
    控制台日志(“recievd”);
    对于(var i=0;i
    在concole.log上打印的很好

    document.getElementById("demo").innerHTML = '<li>' + sensorNames '</li>
    
    document.getElementById(“demo”).innerHTML='
  • '+sensorNames'

  • 类似的东西???

    您可以使用下面的语法

    document.getElementById('demo').innerHTML ='<li>' + sensorNames + '</li>'
    
    document.getElementById('demo').innerHTML='
  • '+sensorNames+'
  • '
    您可以使用下面的语法

    document.getElementById('demo').innerHTML ='<li>' + sensorNames + '</li>'
    
    document.getElementById('demo').innerHTML='
  • '+sensorNames+'
  • '
    使用下面类似的方法

    function onLocationsReceived(data){
    var html="";
      for (var i = 0; i < data[0].Sensors.length; i++) {
       var sensorNames = data[0].Sensors[i].Name;
        html+="<li>"+sensorNames+"</li>";
        console.log(sensorNames);
    }
    document.getElementById("demo").innerHTML=html;
    }
    
    函数onLocationsReceived(数据){
    var html=“”;
    对于(var i=0;i”+sensorNames+“”;
    console.log(传感器名称);
    }
    document.getElementById(“demo”).innerHTML=html;
    }
    
    使用下面类似的方法

    function onLocationsReceived(data){
    var html="";
      for (var i = 0; i < data[0].Sensors.length; i++) {
       var sensorNames = data[0].Sensors[i].Name;
        html+="<li>"+sensorNames+"</li>";
        console.log(sensorNames);
    }
    document.getElementById("demo").innerHTML=html;
    }
    
    函数onLocationsReceived(数据){
    var html=“”;
    对于(var i=0;i”+sensorNames+“”;
    console.log(传感器名称);
    }
    document.getElementById(“demo”).innerHTML=html;
    }
    
    您应该将迭代传感器名称缓存到带有li的var中,然后替换innerHTML:

    var content = "",
        sensorNames;
    
    for (var i = 0; i < data[0].Sensors.length; i++) {
        sensorNames = data[0].Sensors[i].Name;
        content += "<li>" + sensorNames + "</li>";
    }
    
    document.getElementById("demo").innerHTML = content;
    
    var content=“”,
    传感器名称;
    对于(var i=0;i”+传感器名称+“”;
    }
    document.getElementById(“demo”).innerHTML=content;
    
    您应该将迭代传感器名称缓存到带有li的var中,然后替换innerHTML:

    var content = "",
        sensorNames;
    
    for (var i = 0; i < data[0].Sensors.length; i++) {
        sensorNames = data[0].Sensors[i].Name;
        content += "<li>" + sensorNames + "</li>";
    }
    
    document.getElementById("demo").innerHTML = content;
    
    var content=“”,
    传感器名称;
    对于(var i=0;i”+传感器名称+“”;
    }
    document.getElementById(“demo”).innerHTML=content;
    
    根据您的代码,您正在覆盖内部HTML中的文本。我建议为
  • 元素创建临时字符串变量,然后在构建它之后,将其编写为.innerHTML。而不是执行
    +=
    。这对性能和易于维护都有好处。根据您的代码,您正在覆盖内部HTML中的文本。我建议为
  • 元素创建临时字符串变量,然后在构建它之后,将其编写为.innerHTML。而不是执行
    +=
    。更好的性能和易于维护查看我以前关于
    +=
    的评论,并在评论行中添加:you can use below syntax-使其更易于复制查看我以前关于
    +=
    的评论,并在评论行中添加:you can can use below syntax-使其更易于复制可以复制请编辑我的答案不能这样做有人可以编辑我的答案不能这样做吗