Неперехваченная ошибка типа: неопределенный не является функцией в indexOf

#javascript #get #typeerror #indexof #location-href

#javascript #получить #ошибка типа #indexof #местоположение-href

Вопрос:

В настоящее время у меня есть этот код для проверки параметров получения URL-адреса веб-сайта для определенного идентификатора, но всякий раз, когда этот код запускается, я получаю странную ошибку: Uncaught TypeError: Undefined is not a function

Вот мой код:

 <script language="JavaScript">
    var familyid = "id=8978566";
    var corporateid = "id=8978565";

    if(window.location.indexOf(familyid) === -1)
       {
        document.write("Family ID not found");
       }

</script>
  

Было бы здорово, если бы я мог получить некоторые рекомендации по этому вопросу… Я не смог найти похожие проблемы с помощью .indexOf() функции

Ответ №1:

окно.location — это Location объект, а не строка, и indexOf представляет собой строковый (или массивный) метод.

Если вы хотите выполнить поиск по параметрам запроса, попробуйте

 window.location.search.indexOf(familyId)
  

или, если вы хотите, проверьте весь URL-адрес,

 window.location.toString().indexOf(familyId)
  

Комментарии:

1. Большое спасибо! Это исправлено!

2. Вы могли бы попробовать вызвать toString . Создание этой одной строки: если (окно. Расположение. toString().indexOf(familyid) === -1)