javascript学习指南|javascript中indexOf()和lastIndexOf()方法用法

更新时间:2017-06-05    来源:php常用代码    手机版     字体:

【www.bbyears.com--php常用代码】

Javascript 的字符串有个 indexOf 的方法,能够返回字符在指定的字符串中的位置,非常有用,本文介绍了如何给 Javascript 数组也添加一个类似的方法

 代码如下 <script type="text/javascript">
// // 说明:给 Javascript 数组添加一个 indexOf 方法
// 整理:http://www.111cn.net
 
[].indexOf || (Array.prototype.indexOf = function(v){
       for(var i = this.length; i-- && this[i] !== v;);
       return i;
});
 
var b = [0, 1, "哈哈", 3, 4, "嘿嘿", 6, 7, 8, 9];
 
document.write("


b = ", b.join(","), "
");
 
document.write("
b.indexOf(2) = ", b.indexOf(2));
document.write("
b.indexOf("嘿嘿") = ", b.indexOf("嘿嘿"));
 
//]]>
</script>

lastIndexOf()

语法
var index = array.lastIndexOf(searchElement[, fromIndex]);
参数说明
searchElement: 要搜索的元素

fromIndex : 开始搜索的位置,默认为数组的长度(length),在这样的情况下,将搜索所有的数组元素。如果传入的值大于或等于数组的范围(length),将搜索整个数组,如果传入的值小于 0 ,将返回 -1 ,在这样的情况下,搜索操作将不被执行。搜索是反方向进行的。

功能说明
比较 searchElement 和数组的每个元素是否绝对一致(===),当有元素符合条件时,返回当前元素的索引。如果没有发现,就直接返回 -1 。

 代码如下


<script language="JavaScript" type="text/javascript">
 
// 说明:Javascript Array 的 lastIndexOf() 方法

 
if (!Array.prototype.lastIndexOf)
{
    Array.prototype.lastIndexOf = function(elt /*, from*/)
    {
        var len = this.length;
 
        var from = Number(arguments[1]);
        if (isNaN(from))
        {
            from = len - 1;
        }
        else
        {
            from = (from < 0)
                ? Math.ceil(from)
                : Math.floor(from);
            if (from < 0)
                from += len;
            else if (from >= len)
                from = len - 1;
        }
 
        for (; from > -1; from--)
        {
            if (from in this && this[from] === elt)
                return from;
        }
        return -1;
    };
}
</script>

本文来源:http://www.bbyears.com/jiaocheng/33144.html

猜你感兴趣