Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript .innerHTML和console.log()在显示/呈现输出方面有什么区别吗?_Javascript_Jquery_Json_Xml - Fatal编程技术网

Javascript .innerHTML和console.log()在显示/呈现输出方面有什么区别吗?

Javascript .innerHTML和console.log()在显示/呈现输出方面有什么区别吗?,javascript,jquery,json,xml,Javascript,Jquery,Json,Xml,我正在使用java脚本函数将JSON转换为XML字符串。我甚至能够成功地做到这一点。但是,当我尝试用3种不同的方法查看它时,当我使用alert和console.log()时,我在.innerHTML中得到了不同的输出 这种差异的原因是什么?我做错什么了吗 下面是我的代码: HTML: <div id="show"></div> JS 函数objectToXml(obj){ var xml=''; 用于(obj中的var prop){ 如果(!对象hasOwnProper

我正在使用java脚本函数将JSON转换为XML字符串。我甚至能够成功地做到这一点。但是,当我尝试用3种不同的方法查看它时,当我使用alert和console.log()时,我在.innerHTML中得到了不同的输出 这种差异的原因是什么?我做错什么了吗

下面是我的代码:

HTML:

<div id="show"></div>
JS

函数objectToXml(obj){
var xml='';
用于(obj中的var prop){
如果(!对象hasOwnProperty(prop)){
持续
}
if(obj[prop]==未定义)
持续
xml+=“”;
if(对象的类型[prop]=“对象”)
xml+=objectToXml(新对象(obj[prop]);
其他的
xml+=obj[prop];
xml+=“”;
}
返回xml;
} 
var myJson={“id”:1,“name”:“Albert”,“dob”:“2011-02-19”,“gender”:“male”,“email”:”albert@rediffmail.com“,”语言“:”英语“}
var xmlString=objectToXml(myJson);
document.getElementById(“show”).innerHTML=xmlString;
警报(xmlString);
log(xmlString);
我真的不明白为什么使用.innerHTML时不打印XML字符串


下面是一个

innerHTML
将呈现html

改用
innerText


请参阅更新提琴:

innerHTML
将呈现html…是的!我明白了。因此,当呈现为HTML时,它基本上消除了开始和结束标记,就像其他HTML标记一样。是的,因为基本上您可以使用自定义标记,请参阅
#show{
  width:100%; 
  height:200px;
  background:#000;
  color:#fff;
}
function objectToXml(obj) {
        var xml = '';
        for (var prop in obj) {
            if (!obj.hasOwnProperty(prop)) {
                continue;
            }
            if (obj[prop] == undefined)
                continue;
            xml += "<" + prop + ">";
            if (typeof obj[prop] == "object")
                xml += objectToXml(new Object(obj[prop]));
            else
                xml += obj[prop];
            xml += "</" + prop + ">";
        }
        return xml;
    } 
    var myJson={"id":1,"name":"Albert","dob":"2011-02-19","gender":"male","email":"albert@rediffmail.com","language":"English"}
    var xmlString = objectToXml(myJson);
    document.getElementById("show").innerHTML=xmlString;
    alert(xmlString);
    console.log(xmlString);