如何在JavaScript中推送数组中的不同元素
下面是我的HTML文档。我想推送在名为“number”的数组中单击的数字 现在,如果我单击1,数字会增加,但是如果我单击2或3,那么数字1也会添加到数组中 我知道原因,因为它使用相同的id,但如何添加不同的号码如何在JavaScript中推送数组中的不同元素,javascript,html,Javascript,Html,下面是我的HTML文档。我想推送在名为“number”的数组中单击的数字 现在,如果我单击1,数字会增加,但是如果我单击2或3,那么数字1也会添加到数组中 我知道原因,因为它使用相同的id,但如何添加不同的号码 <html> <body> <table> <tr> <td id="key" onClick="addNumber()">1</td> <td id="key" onClick="addNumber()"
<html>
<body>
<table>
<tr>
<td id="key" onClick="addNumber()">1</td>
<td id="key" onClick="addNumber()">2</td>
<td id="key" onClick="addNumber()">3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
</table>
</body>
<script>
let number = [];
function addNumber() {
var num = document.getElementById("key").innerHTML;
number.push(num);
}
</script>
</html>
1.
2.
3.
4.
5.
6.
设数=[];
函数addNumber(){
var num=document.getElementById(“key”).innerHTML;
number.push(num);
}
请尝试以下方法:
<html>
<body>
<table>
<tr>
<td id="key" onClick="addNumber(1)">1</td>
<td id="key" onClick="addNumber(2)">2</td>
<td id="key" onClick="addNumber(3)">3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
</table>
</body>
<script>
let number = [];
function addNumber(num) {
number.push(num);
}
</script>
</html>
1.
2.
3.
4.
5.
6.
设数=[];
函数addNumber(num){
number.push(num);
}
您可以像这样将当前元素传递给函数:
onClick="/myFunction( this )"
现在可以读取此元素,因为它是传入的第一个参数:
function myFunction( element ){ .. use element... }
let number=[];
函数addNumber(元素){
var num=element.innerHTML;
number.push(num);
控制台日志(编号)
}
1.
2.
3.
4.
5.
6.
只需更改为不同的id?第一个元素的id是找到的嘿,我们能在同一个数组中打印数字吗?并同时打印数组的元素?现在,在您和我的代码中,它每次单击都会打印新数组。@Aditya在内部,这是同一个数组,它的工作原理是console.log
每次单击都会打印它(因为每次登录时它都会打印结果)。在内部,它仍然是存储在number
中的单个数组。我不确定您要的是什么输出,这个问题不清楚。不,我知道了,正如您所说,内部是同一个数组。这只是疑问。如果我的问题有效,您可以对其进行投票。@Aditya我还添加了一个关于如何实现这一点的最佳实践示例。我还更改了它的输出,因此您可以更轻松地获得“它是同一个数组”!