JavaScript:删除双引号 - JSON.Stringify()

时间:2017-05-19 19:04:21

标签: javascript json stringify

在JavaScript中使用JSON.stringify()方法以允许在浏览器中呈现JSON数据后,它会在浏览器中呈现的属性的任一端输出双引号 - 任何想法如何解决这个问题?

这是我的代码 -

<li class="divider">Brown Eyes</li>
<div id="output1"></div>
<li class="divider">Green Eyes</li>
<div id="output2"></div>

<script>
    var myContainer = "";

    var a = new XMLHttpRequest();
    a.open("GET", "https://api.myjson.com/bins/1dwnm", true);
    a.onreadystatechange = function () {
        console.log(a);
        if (a.readyState == 4) {
            var obj = JSON.parse(a.responseText);
            for (i = 0; i < obj.length; i++) {

                if (obj[i].eyeColor == 'brown') {
                var myContainer = "<ul class='list'><li>" + obj[i].name.first + " " + obj[i].name.last + " - " + obj[i].eyeColor + "</li></ul>";
                var myContainer = JSON.stringify(myContainer);
                document.getElementById('output1').innerHTML += myContainer;    
                }
                if (obj[i].eyeColor == 'green') {
                var myContainer = "<ul class='list'><li>" + obj[i].name.first + " " + obj[i].name.last + " - " + obj[i].eyeColor + "</li></ul>";
                var myContainer = JSON.stringify(myContainer);
                document.getElementById('output2').innerHTML += myContainer;    
                }
            }
        }

    }
    a.send();
</script>

1 个答案:

答案 0 :(得分:2)

因为“<ul class='list'><li>Faye Garrett - brown</li></ul>”不是有效的JSON字符串。

取消注释你的stringify线并且它有效。