关于用for in遍历document.links的问题

今天纠结了很久的一个问题,

<body>
<a href="a">1</a>
<a href="b">2</a>
<a href="c">3</a>
<script type="text/javascript">
function a(){
   var index;
   var links=document.links;
   for(index in links){

     alert(links[index]href);
   }
}
a();
</script>

用for循环就能正确输出href,但是用for in 就不行后来用alert(index)查了一下,输出了几个譬如item这样的东西,

一切解释就是看HTMLCollection

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
document.links是用来获取网页中所有链接的集合。它返回的是一个类数组对象,在这个对象中,每一个元素都代表页面中的一个链接。我们可以通过遍历这个集合来对每个链接进行操作,比如改变链接的样式、获取链接的地址等。 indexOf是一个数组方法,用于返回指定元素在数组中第一次出现的索引。它接受一个参数,即要搜索的元素,如果找到了该元素,则返回它的索引值,如果没有找到,则返回-1。 在这里,如果我们想要找到document.links数组中某个具体的链接,可以使用indexOf方法来进行搜索。我们可以将待搜索的链接作为参数传递给indexOf方法,如果返回的索引值不为-1,则说明该链接在数组中存在,我们可以进一步对其进行操作;反之,索引值为-1,则说明该链接不存在,我们需要采取其他的逻辑措施。 需要注意的是,document.links返回的是一个类数组对象,而非一个真正的数组,而indexOf方法只能作用于真正的数组。因此,为了使用indexOf方法,我们需要先将document.links转换为一个真正的数组,然后再进行搜索操作。我们可以使用Array.from()方法将类数组对象转换为数组,然后使用indexOf方法进行搜索。 总之,document.links是用来获取网页中所有链接的集合,而indexOf是用来在数组中搜索指定元素的方法。在处理具体的链接时,可以通过indexOf方法来判断链接是否存在于数组中,从而进行进一步的操作。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值