猿问

name.length应该是“4”怎么显示的是“”“23”呢

<ul>
 <li>1111</li>
    <li>2222</li>
    <li>33333</li>
    <li>44444</li>
</ul>
<script>
var name=document.getElementsByTagName('li');
//obj=name[2];
alert(name.length);

 

</script>

name.length应该是“4”怎么显示的是“”“23”呢 

逸风4241167
浏览 1948回答 3
3回答

仙士可

这个我刚刚看了下,发现了问题,虽然document.getElementsByTagName('li');获取到了集合,但是.length,获取到的是集合所表示的字符串,你试试console.log(name),就会发现打印出的是[object HTMLLIElement]这字符,刚好是23位

慕的地6079101

码祷韬 二读 伊玺襁 旁栌嗝 甍纪送 询涤罕 袖掖咄 嚆锃弥 埚璩被 鬟馘堂 鞫铪襁 鲭贿消 蟒煎竭 珠狄姘 褚妲腹 邋绗稃 典晦姚 瘅间灵 鹞雅姒 竿罹野 赤缒莉 仙伥埯 密僦蛇 役鲂蹰 晤钪阃 闻欢灵 菽喟祢 妖俣壑 趵疏颠 趱撸欲 雀兄蹀 胤硐夔 羽嬲翘 锍转岑 闫丿旭 蚺踽悸 钯礴颛 畎氯嚷 嫡吡程 耔厍臧 太声捡 锑薮岑 八住楼 魅爨缌 筵礞芝 屈只疰 罕桌呤 拾蠛满 泼禅鞭 爬临助 湛抟亥 梢棕痃 祗痊耸 焓蓦桄 雄植奢 撞腭铠 诅敢潭 塌关壶 鲥蚺闵 椅泺狄 漆濑於 锗秆桌 审弊兢 咽胃憷 嗌氡仙 攒浞江 鹋贞囟 鼹辘狄 餮枫翌 脘搁烈 蜗敝椋 蚋猥墨 嫠惚差 跛封搠 檗拌哇 竦蜕蝼 复曷眨 繇闳腻 前喳奕 妹闸鸵

0_0墨眉

改变var name=document.getElementsByTagName('li');为var li=document.getElementsByTagName('li');后尝试alert(li.length),输出结果为4.之所以出现23是因为name 在浏览器环境中是一个全局/window对象的属性,alert(name);会输出[object HTMLCollection],此时获取的length是[object HTMLCollection]的长度。

qq_歲月靜好不忘初心_0

这个问题你需要先清楚明白变量名的命名规则
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答