带有Array的Javascript参数



var show=[
"p1",
"p2",
"p3"
];
var n;
function show(n){
for(n=1;n<=3;++n){


document.getElementById("show").innerHTML=show[n];
}
}
<button onclick="show(1)">b1</button>
<button onclick="show(2)">b2</button>
<button onclick="show(3)">b3</button>

<p id="show"></p>

当我分别单击b1、b2、b3时,我正在尝试打印p1、p2、p3。我该怎么做。

您的代码有几个问题。

首先,不要用相同的名称命名变量和函数。在本例中,可以将阵列重命名为showArr

然后您需要删除for循环(这与您试图实现的目标相反(。在获取带索引的数组项时,需要传递index - 1

并且在全局范围内不需要变量n(它是多余的(。

var showArr = [
"p1",
"p2",
"p3"
];
function show(n) {
document.getElementById("show").innerHTML = showArr[n - 1];
}
<button onclick="show(1)">b1</button>
<button onclick="show(2)">b2</button>
<button onclick="show(3)">b3</button>
<p id="show"></p>

只是不要对变量和函数使用相同的名称show

var show = [
"p1",
"p2",
"p3"
];
function showIt(n) {
document.getElementById("show").innerHTML = show[n - 1];
}
<button onclick="showIt(1)">b1</button>
<button onclick="showIt(2)">b2</button>
<button onclick="showIt(3)">b3</button>
<p id="show"></p>

最新更新