gpt4 book ai didi

javascript - Array Push 在 JavaScript 中对相同的值使用相同的索引

转载 作者:行者123 更新时间:2023-11-30 16:36:16 29 4
gpt4 key购买 nike

我刚刚发现使用函数 array.push(value) 使用相同的值名称,将给出具有相同值名称的第一个项目的相同索引。

看下面的示例代码:

<p>Click the button to add a new element to the array.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits;

function myFunction() {
fruits.push("Orange");
var orange_index = fruits.indexOf("Orange");
document.getElementById("demo").innerHTML = orange_index;
}
</script>

如果运行它,您会注意到答案是“1”,对应于插入数组的第一个“Orange”项。

如何避免这种行为?我需要将相同的值插入到具有不同索引的数组中。

我需要使用多维数组吗?我有一副纸牌,我需要将等级和花色存储在数组中。到目前为止,我为等级和花色创建了两个不同的数组,但我遇到了这个问题。我分别检索了行列和花色,是否应该将它们一起放入一个新的多维数组中?如何 ?

谢谢

最佳答案

Example fiddle .

The indexOf() method returns the first index at which a given element can be found in the array, or -1 if it is not present.

单击按钮后,您的数组如下所示:

["Banana", "Orange", "Apple", "Mango", "Orange"]

所以当你尝试时:

var orange_index = fruits.indexOf("Orange");

这将像您在描述中看到的那样返回 Orange 的第一个索引,因此通常它会返回 1

关于javascript - Array Push 在 JavaScript 中对相同的值使用相同的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32658777/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com