首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有直接函数来获取数组中所有可能匹配的索引?

是否有直接函数来获取数组中所有可能匹配的索引?
EN

Stack Overflow用户
提问于 2014-04-09 09:17:35
回答 2查看 30关注 0票数 0

我通常认为indexOf非常有用,可以直接获得索引,而不是编写3-4行for循环来获得匹配。是否有类似的函数,比如indicesOf,来获取所有可能匹配的数组?或者是有一个不同的名字,但作为一个美丽的快捷方式,如"indexOf“?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-09 09:46:43

因为您不介意创建一个新的数组,所以可以使用filter()函数--它对数组的每个项执行一个函数,然后返回一个带有返回true的项的新数组

代码语言:javascript
复制
// our comparison function
function myCompFunction( element:*, index:int, array:Array ):Boolean
{
    return ( element > 10 );
}

var ar:Array = [5,10,15,20];
var ar2:Array = ar.filter( myCompFunction ); // ar2 is now [15,20]

这并不完全是指示,但再说一遍,你不需要取消你的对象。

注意:因为它正在对每个元素调用一个函数,所以自己遍历数组的速度仍然会更快

US/FlashPlatform/reference/actionscript/3/Array.html#filter()

票数 1
EN

Stack Overflow用户

发布于 2014-04-09 09:24:05

不幸的是,没有这样的捷径。indexOf只对一个项起作用,对于多个项没有其他选择。解决方案很明显--对整个数组进行迭代,或者在数组上使用某种排序。也许还有其他的方法,但它们几乎是相同的-循环的一切和检查。很抱歉这么说,但事情就是这样的:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22958010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档