【发布时间】:2017-07-18 03:37:42
【问题描述】:
如何在不遍历所有索引值的情况下指定数组的多个索引值?
我有一个数组:var boxArray = $(’.box’).toArray();。我有 9 个元素的类 box,所以这个数组由索引值 [0, 1, 2, 3, 4, 5, 6, 7, 8] 组成。
如果[0]、[4] 和[8] 的boxArray 索引值都被赋予clicked 类,我希望发生一些事情。我知道我可以使用 for 循环遍历整个数组,并且我知道我只能引用一个索引值 (boxArray[0]),但是我如何一次表示多个无序索引值?
$(boxArray[0, 4, 8]) 不起作用 - 仅识别最后一个索引值。 $(boxArray[0][4][8]) 不起作用
在 JavaScript 和 jQuery 中执行此操作的唯一方法是一次引用它们吗?理想情况下,我希望能够做这样的事情:
if ($(boxArray[0, 4, 8]).hasClass(‘clicked’)) {
// do something;
}
而不是
if ($(boxArray[0]).hasClass('clicked') &&
$(boxArray[4]).hasClass('clicked') &&
$(boxArray[8]).hasClass('clicked')
) {
// do something
}
【问题讨论】:
-
是否可以为此提供小提琴?
-
迭代它们有什么问题?
-
我在那里添加了更多代码而不是 jsfiddle。我对 for 循环的问题是我需要参考的三个索引值的总共八个组合,其中几个是乱序的。我只是希望有一种神奇的非 for 循环方式来访问多个无序索引值。
-
为什么是
0、4和8?他们有什么共同点?他们能被什么东西选中吗? -
这是关于井字游戏的吗?因为有更简单的方法可以连续检查三个。
标签: javascript jquery arrays for-loop