Функции Javascript - if (scriptTag.src.match - PullRequest
0 голосов
/ 28 мая 2018

У меня есть этот код, это для видео YouTube.

if (scriptTag.src.match(/(youtube|youtu|)\.(com|be)\/((watch\?v=([-\w]+))|(projects\/([-\w]+)\/([-\w]+))|([-\w]+))/)) { 

то, что я хочу изменить, это пример:

scriptTag.src.match any url

, поэтому я хочу работать с любым URL илис кратким примером кода: scriptTag.src.match [my wp shortcode]

Я надеюсь, что вы понимаете, что я пытаюсь сделать, и я надеюсь, что мне помогут, спасибо.

1 Ответ

0 голосов
/ 29 мая 2018

Если вы хотите проверить, связан ли данный URL с YouTube или Vimeo, тогда вы можете просто использовать startsWith метод строки.

Предположим, что url1, url2 и url3 эквивалентны scriptTag.src, что они считают кодом, который вы связали.В этом случае вы можете просто написать такую ​​функцию проверки, как эта.

function checkUrl(url) {
  if (url.startsWith('https://www.youtube.com') ||
      url.startsWith('https://vimeo.com')) {
    return true;
  }
  return false;
}

здесь приведен фрагмент, демонстрирующий использование этой функции.

const url1 = 'https://www.youtube.com/whatever';
const url2 = 'https://vimeo.com/whatever';
const url3 = 'http://wrongSource.com'

function checkUrl(url) {
  if (url.startsWith('https://www.youtube.com') ||
      url.startsWith('https://vimeo.com')) {
    return true;
  }
  return false;
}

if (checkUrl(url1)) {
  console.log('url1 is valid');
  // do some stuff
} else {
  console.log('url1 is not valid');
  // do nothing
}

if (checkUrl(url2)) {
  console.log('url2 is valid');
  // do some stuff
} else {
  console.log('url2 is not valid');
  // do nothing
}

if (checkUrl(url3)) {
  console.log('url3 is valid');
  // do some stuff
} else {
  console.log('url3 is not valid');
  // do nothing
}
...