jQuery - Проверить, содержит ли URL одну из возможных строк - PullRequest
0 голосов
/ 16 апреля 2020

Я пытаюсь использовать jQuery, чтобы определить, содержит ли URL какой-либо из ряда различных строк. Я успешно написал некоторый код, чтобы определить, содержит ли URL только ОДНУ строку (см. Ниже), но я не уверен, как проверить, содержит ли URL какой-либо из множества различных возможных строк. Логически говоря, я хочу использовать jQuery, чтобы определить, содержит ли URL «строка A» ИЛИ «строка B» ИЛИ «строка C» и т. Д. c. Очевидно, я мог бы написать совершенно разные функции для каждой строки, но это кажется ужасно неэффективным. Заранее спасибо за ваш вклад.

$(document).ready(function(){
if(window.location.href.indexOf("360007912231") > -1) {
$("#catchildren1").show();
}
});

1 Ответ

0 голосов
/ 17 апреля 2020

Если я правильно понимаю ваш вопрос, вы хотите проверить, содержится ли хотя бы один элемент в списке подстрок в строке (поскольку window.location.href действительно возвращает строку). В этом случае вы можете просто написать несколько выражений «или» в своем операторе if, но это не обобщает произвольный список, и вам будет сложно выписать, если у вас есть что проверить. Вот почему я отсылаю вас к регулярному выражению , которое можно применить к произвольному списку подстрок. Вот как вы можете реализовать это в своем коде:

let substrings = ["360007912231", ...];

if (new RegExp(substrings.join("|")).test(window.location.href)) {
    $("#catchildren1").show();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...