• javascript中indexOf()和lastIndexOf()详解


    ECMAScript5为数组实例添加两方法:indexOf()和lastIndexOf()。这两个方法接受两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中,indexOf()方法从数组的开头(位置0)开始向后查找,lastIndexOf()方法则从数组的末尾开始向前查找。

    这两个方法都返回要查找的项在数组中的位置,或者在没有找到的情况下返回-1。在比较第一个参数与数组中的每一项时,会使用全等操作符;也就是说,要求查找的项必须严格相等(就像使用===一样)。

    indexOf()和lastIndexOf()基本用法:

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta charset="utf-8">
     5 <title>indexOf()和lastIndexOf()</title>
     6 </head>
     7 <body>
     8 <script>
     9 var arry=[2,5,3,4,5,6,1];
    10 document.write(arry.indexOf(3));
    11 document.write("<br />");
    12 document.write(arry.indexOf(5,2));
    13 document.write("<br />");
    14 document.write(arry.lastIndexOf(6));
    15 document.write("<br />");
    16 document.write(arry.lastIndexOf(5,3));
    17 </script>
    18 </body>
    19 </html>

    上述代码运行结果:

    2

    4

    5

    1

    使用indexOf()和lastIndexOf()方法查找特定项在数组中的位置非常简单,支持它们的浏览器包括:IE9+、Firefox2+、Safari3+、Opera9.5+和Chrome。

    为了能兼容其他版本的主流浏览器,可以按下面这样:

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta charset="utf-8">
     5 <title>indexOf()和lastIndexOf()</title>
     6 </head>
     7 
     8 <body>
     9 <script>
    10 if(!(Array.prototype.indexOf)){
    11     Array.prototype.indexOf=function(val){
    12         for(var i=0;i<this.lenth;i++){
    13             if(this[i]===val){
    14                 return i;
    15             }else{
    16                 return -1;
    17             }
    18         }
    19         
    20     };    
    21 }
    22 var arry=[2,5,3,4,5,6,1];
    23 document.write(arry.indexOf(3));
    24 document.write("<br />");
    25 document.write(arry.indexOf(5,2));
    26 document.write("<br />");
    27 document.write(arry.lastIndexOf(6));
    28 document.write("<br />");
    29 document.write(arry.lastIndexOf(5,3));
    30 </script>
    31 </body>
    32 </html>
  • 相关阅读:
    搜索入门
    计算几何基础
    对“学生自行组队,共同完成实验”的一些思考感慨
    20145213《信息安全系统设计》第十一周学习总结
    20145213《信息安全系统设计基础》第十周学习总结
    记与舍友摩擦的一两事儿
    20145213《信息安全系统设计》第九周学习总结下篇
    20145213《信息安全基础设计》第九周学习总结上篇
    20145213《信息安全设计系统》实验报告一
    20145213《信息安全系统设计基础》第八周学习总结下篇
  • 原文地址:https://www.cnblogs.com/wuqun/p/3657492.html
Copyright © 2020-2023  润新知