Поиск по сайту:
Проходимец — это средняя стадия между «ничто» и «первопроходец» (С.Н. Федоров).

JavaScript — Массивы. Метод indexOf

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
08.11.2018

Описание

Метод indexOf() в Javascript возвращает первый индекс, в котором данный элемент может быть найден в массиве, или -1, если он отсутствует.

Синтаксис

Его синтаксис выглядит следующим образом:

array.indexOf(searchElement[, fromIndex]);

Детали параметров

  • searchElement — элемент, который можно найти в массиве.
  • fromIndex — индекс, с которого начинается поиск. По умолчанию 0, т. е. будет проведен поиск всего массива. Если индекс больше или равен длине массива, возвращается -1.

 

Возвращаемое значение

Возвращает индекс найденного элемента.

 

Совместимость

Этот метод является расширением JavaScript стандарта ECMA-262; как таковой, он не может присутствовать в других реализациях стандарта. Чтобы он работал, вам нужно добавить следующий код в верхней части вашего скрипта.

if (!Array.prototype.indexOf)
{
   Array.prototype.indexOf = function(elt /*, from*/)
   {
      var len = this.length;
      
      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;
   };
}

Пример

Попробуйте следующий пример.

<html>
   <head>
      <title>JavaScript - Массивы. Метод indexOf</title>
   </head>
   
   <body>
   
      <script type="text/javascript">
         if (!Array.prototype.indexOf)
         {
            Array.prototype.indexOf = function(elt /*, from*/)
            {
               var len = this.length;
               
               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;
            };
         }
         
         var index = [12, 5, 8, 130, 44].indexOf(8);
         document.write("индекс : " + index ); 
         
         var index = [12, 5, 8, 130, 44].indexOf(13);
         document.write("<br />индекс : " + index ); 
      </script>
      
   </body>
</html>

 

Вывод

индекс : 2
индекс : -1
Если статья понравилась, то поделитесь ей в социальных сетях:

Это может быть вам интересно

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии