gpt4 book ai didi

javascript - 为什么 document.images 不仅仅包含图像引用?

转载 作者:行者123 更新时间:2023-11-28 14:52:51 25 4
gpt4 key购买 nike

这里是 JavaScript 新手,请温柔。我正在使用的 JavaScript 资源似乎都说 document.images 是一个对 img 引用的数组(更新:除了它不是一个数组;请参阅下面的 Badacadabra 的答案)页面上的元素。这很清楚,所以为了深入了解,我写了 this :

<!DOCTYPE html>
<html>
<body>
<img src="http://java2s.com/style/demo/border.png" width="150" height="113">
<img src="http://java2s.com/style/demo/border.png" width="150" height="113">
<img src="http://java2s.com/style/demo/border.png" width="150" height="113">
<p><button onclick="myFunction()">test</button></p>
<p id="demo"></p>

<script>
function myFunction() {
image_report = ""
for (i in document.images) {
image_report = image_report + document.images[i].src + "<br>";
}
document.getElementById("demo").innerHTML = image_report;
}
</script>
</body>
</html>

但是,我不仅获得了页面三个图像的 src 值列表,还获得了另外三个 src undefined object :

http://java2s.com/style/demo/border.png
http://java2s.com/style/demo/border.png
http://java2s.com/style/demo/border.png
undefined
undefined
undefined

那些是什么以及他们在那里做什么?为什么没有对此进行解释,例如 here ?我是否可能遗漏了 for...in 的工作原理?

最佳答案

The for...in statement iterates over the enumerable properties of an object

for..in还获取 document.images

.length.item.namedItem 属性

您也可以使用for..of循环

<!DOCTYPE html>
<html>
<body>
<img src="http://java2s.com/style/demo/border.png" width="150" height="113">
<img src="http://java2s.com/style/demo/border.png" width="150" height="113">
<img src="http://java2s.com/style/demo/border.png" width="150" height="113">
<p><button onclick="myFunction()">test</button></p>
<p id="demo"></p>

<script>
function myFunction() {
image_report = ""
for (let image of document.images) {
image_report = image_report + image.src + "<br>";
}
document.getElementById("demo").innerHTML = image_report;
}
</script>
</body>
</html>

关于javascript - 为什么 document.images 不仅仅包含图像引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43923149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com