0
A
回答
2
在javascript中1.6+可以使用.indexOf()
:
var index = arr.indexOf('hello');
在早期版本中,你只想通过自己的数组必须循环。
有趣的是,alert([].indexOf)
在Chrome中为您提供了实现:
function indexOf(element, index) {
var length = this.length;
if (index == null) {
index = 0;
} else {
index = (_IsSmi(IS_VAR(index)) ? index : ToInteger(index));
if (index < 0) index = length + index;
if (index < 0) index = 0;
}
for (var i = index; i < length; i++) {
var current = this[i];
if (!(typeof(current) === 'undefined') || i in this) {
if (current === element) return i;
}
}
return -1;
}
不要问我什么_IsSmi(IS_VAR(index))
做虽然...
3
arr.indexOf("hello");
的indexOf
方法并不是在所有浏览器都支持(这是在JavaScript 1.6增加),但是你可以使用下面的代码,使其在那些不这样做(从MDC page for indexOf
代码)工作:
if (!Array.prototype.indexOf)
{
Array.prototype.indexOf = function(elt /*, from*/)
{
var len = this.length >>> 0;
var from = Number(arguments[1]) || 0;
from = (from < 0)
? Math.ceil(from)
: Math.floor(from);
if (from < 0)
from += len;
for (; from < len; from++)
{
if (from in this &&
this[from] === elt)
return from;
}
return -1;
};
}
0
arr.indexOf('hello');
我不知道,如果它在IE浏览器虽然(它肯定可用于Firefox和Webkit)。
:-D
+0
我真的不知道为什么我会得到投票....我的答案与其他(没有错)肯定没有太大区别。 – NawaMan 2009-09-22 13:02:15
相关问题
- 1. 阵列操作
- 2. 阵列操作
- 3. Javascript阵列元素上的操作
- 4. 操作主阵列
- 5. 阵列RGB操作
- 6. 多阵列操作
- 7. 操纵阵列的Javascript
- 8. 最佳阵列操作API
- 9. Matlab的阵列操作
- 10. 阵列索引操作
- 11. 阵列/矩阵操作出错
- 12. 在JavaScript操纵阵列通过切片
- 13. 矩阵操作?
- 14. 在两个独立阵列中操作阵列键值
- 15. 堆栈错误按下操作对阵列进行操作
- 16. 集的效率操作VS在红宝石阵列操作
- 17. 位操作:改变二元“阵列”
- 18. 好奇阵列覆盖操作
- 19. Numpy:对NxM阵列(或行)的操作
- 20. Knockout.js可观察阵列操作
- 21. 在一维阵列上的操作
- 22. 在二维阵列上的操作
- 23. 过载操作者以调换阵列
- 24. 在Java中的2D阵列操作
- 25. 推力操作空主机阵列
- 26. 阵列操作给我合并表
- 27. Perl /红宝石单线阵列操作
- 28. 3D阵列C++使用INT []操作
- 29. 在阵列上操作元素
- 30. 操作单元阵列元素
在哪里可以看到我的javascript版本? – omg 2009-09-22 09:00:08
要做的最好的事情就是看看它是否支持 - if(typeof [] .indexOf =='undefined'){你没有它} – Greg 2009-09-22 09:02:53
这是支持的,但仍然不知道javascript版本:( – omg 2009-09-22 09:05:49