所以我有点理解我需要使用for
循环,但是我完全陷入了困境。
有人可以告诉我我需要使用哪种类型的功能吗?
// Variables
var myarray = [3, 4, 6, 6, 1, 3, 3];
var pOutput = document.getElementById("pOutput");
pOutput.innerHTML =
//Events
for (var i = 0; i < myarray.length; i++){
pOutput.innerHTML += "="}
n
//Functions
答案 0 :(得分:0)
您要执行的操作是在数组的每个值中打印等号乘以数字。为此,我建议您使用String原型中的repeat方法,如下所示:
// Variables
var myarray = [3, 4, 6, 6, 1, 3, 3];
var pOutput = document.getElementById("pOutput");
// Fixed this too
pOutput.innerHTML = "";
//Events
for (var i = 0; i < myarray.length; i++){
pOutput.innerHTML += "=".repeat(myarray[i])
}
// ...
请确保下次再次提出更清晰的问题:)
答案 1 :(得分:0)
您可以使用嵌套循环将当前数组元素的值用作添加=
的次数。
您也不会开始新行并先打印行号。
// Variables
var myarray = [3, 4, 6, 6, 1, 3, 3];
var pOutput = document.getElementById("pOutput");
var output = "";
for (var i = 0; i < myarray.length; i++) {
output += `<br>${i} : `;
for (var j = 0; j < myarray[i]; j++) {
output += "=";
}
}
pOutput.innerHTML = output;
<div id="pOutput"></div>
答案 2 :(得分:0)
您可以尝试这样的事情
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<div id="output"></div>
<script>
const list = [3, 4, 6, 6, 1, 3, 3];
const count = list.length;
const result = [];
const output = [];
const dom = document.getElementById('output');
for (let i = 0; i < count; i++) {
const num = list[i];
result[i] = [];
for (let j = 0; j < num; j++) {
result[i].push('=');
}
output[i] = `<div>${i} : ${result[i].join('')}</div>`;
}
dom.innerHTML = output.join('');
</script>
</body>