JavaScript商品列表代码初始DOM操作的技术疑问
关于这段JavaScript代码的疑问解答
Hey Matthew, let's break down your questions step by step:
1. 关于.output ul和products的关联
你的猜测并不准确哦。document.querySelector('.output ul')是一个DOM选择器,它的作用是在页面的文档结构里找到class="output"的元素内部的<ul>标签,和后面定义的products变量没有直接关系。products只是JavaScript里用来存储商品数据的数组,和页面元素的选择逻辑完全是两回事~
2. 关于list.innerHTML = ''的作用
这行代码的核心作用是清空目标<ul>元素里的所有现有内容。比如如果页面加载时这个列表里已经有默认的文字、旧的列表项,这行代码会把它们全部移除,确保后续我们通过循环动态添加的商品列表能干净地显示,不会和旧内容混杂在一起。
附上完整代码方便对照参考:
var list = document.querySelector('.output ul'); var totalBox = document.querySelector('.output p'); var total = 0; list.innerHTML = ''; totalBox.textContent = ''; var products = ['Underpants:6.99', 'Socks:5.99', 'T-shirt:14.99', 'Trousers:31.99', 'Shoes:23.99']; for(var i = 0; i < products.length; i++) { var subArray = products[i].split(':'); var name = subArray[0]; var price = Number(subArray[1]); total += price; itemText = name + ' — $' + price; var listItem = document.createElement('li'); listItem.textContent = itemText; list.appendChild(listItem); } totalBox.textContent = 'Total: $' + total.toFixed(2);
内容的提问来源于stack exchange,提问作者MatthewB
相关产品推荐
相关产品推荐

