老师,请检查
来源:4-4 编程练习
慕粉0644535011
2021-11-21 17:08:42
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Object.entries()</title>
</head>
<body>
<div id="list">
<!--html结构参考如下:-->
<dl>
<dt>前端</dt>
<dd>Vue</dd>
<dd>Vue</dd>
<dd>Vue</dd>
</dl>
</div>
<script>
var classfies = {
"前端": ["Vue", "Angular", "React"],
"后端": ["Php", "Java", "Python"]
}
/*补充代码*/
const getElemnt = (objClassFies) => {
const list = document.getElementById('list').children[0]
let htmlStr = ''
// 外层循环生成dt
for (const [key, value] of Object.entries(objClassFies)) {
htmlStr = `<dt>${key}</dt>`
list.innerHTML += htmlStr
// 内层循环生成dd
for(arrValue of value){
console.log(arrValue);
htmlStr = `<dd>${arrValue}</dd>`
list.innerHTML += htmlStr
}
}
}
getElemnt(classfies)
</script>
</body>
</html>2回答
同学你好,测试第二次粘贴的代码运行效果如下:

html结构中书写的代码也展示到页面了,建议优化:一开始将div中的内容清空,如下:

祝学习愉快~
慕粉0644535011
提问者
2021-11-21
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Object.entries()</title>
</head>
<body>
<div id="list">
<!--html结构参考如下:-->
<dl>
<dt>前端</dt>
<dd>Vue</dd>
<dd>Vue</dd>
<dd>Vue</dd>
</dl>
</div>
<script>
var classfies = {
"前端": ["Vue", "Angular", "React"],
"后端": ["Php", "Java", "Python"]
}
/*补充代码*/
const getElemnt = (objClassFies) => {
const list = document.getElementById('list').children[0]
let htmlStr = ''
let newArr = []
// 外层循环生成dt
for (const [key, value] of Object.entries(objClassFies)) {
let newDt = `<dt>${key}</dt>`
newArr.push(newDt)
// 内层循环生成dd
for (arrValue of value) {
let newDd = `<dd>${arrValue}</dd>`
newArr.push(newDd)
}
console.log(newArr);
}
htmlStr = newArr.join('')
list.innerHTML += htmlStr
}
getElemnt(classfies)
</script>
</body>
</html>老师,之前好像没按照题目....