问答详情
源自:3-3 innerHTML 属性

.innerHTML不同位置的区别

var mychar=document.getElementById('con');这句作用就是让mychar等于<h2>

标签,即mychar就是<h2>,<h2>就是mychar, 

"原标题:"+mychar.innerHTML+"其实这里就是显示mychar的文本内容(也就是

的文本内容),

而var mychar=document.getElementById('con').innerHTML,是让mychar=<h2>

的文本内容,即mychar=javascript,而不是一个标签。 应该是这样吧?

提问者:云月笛 2016-09-29 10:05

个回答

  • yuanzhihui4074917
    2016-09-29 10:22:51
    已采纳

    准确来说第二个mychar应该等于字符串'Javascript';

    要操作一个节点元素是通过id进行的,你的'con'就是给这个id起的名字。通过document.getElementById('con')得到的是一个节点元素,用面向对象来说就是得到一个对象,并把它赋值给mychar,而后面在通过这个对象的方法innerHTML得到这个这个对象的一个属性,也就是标签元素中的内容,依然赋值给mychar,所以第一个mychar和第二个mychar的类型是完全不同的;因为javascript变量声明里不管你是什么类型都可以用var声明,这要是在java中就不是了,也很容易辨认,不会混淆。



  • yuanzhihui4074917
    2016-09-29 11:11:26

    意思差不多。其实你要明白只需要 document.write(mychar)就知道这个变量各自是什么了,把这两个mychar输出看看