JavaScript 从URL获取YouTube视频ID
给定一个YouTube视频URL,任务是使用JavaScript从URL中获取视频ID。下面讨论了几种方法。
JavaScript split()方法 : 该方法用于将字符串分割成一个子字符串的数组,并返回新的数组。
语法:
string.split(separator, limit)
参数:
- separator(分隔符): 此参数为可选项。它指定要用于分割字符串的字符或正则表达式。如果不使用,将返回整个字符串(包含一个项目的数组)。
- limit(限制): 此参数为可选项。它指定一个整数,用于指定分割的次数,超出分割的限制的项目将被排除在数组之外。
JavaScript String substring() 方法: 此方法获取一个字符串的字符,介于两个指定的索引之间,并返回新的子字符串。该方法获取字符串中“开始”和“结束”之间的字符,但不包括“结束”本身。
语法:
string.substring(start, end)
参数:
- start: 此参数是必需的。它指定从何处开始提取。第一个字符的索引从0开始。
- end: 此参数是可选的。它指定停止提取的位置(包括)。如果不使用,则提取整个字符串。
示例1: 此示例通过正则表达式获取视频ID。
let url = 'https://youtu.be/BnJWi0E3Mv0';
let VID_REGEX =
/(?:youtube(?:-nocookie)?\.com\/(?:[^\/\n\s]+\/\S+\/|(?:v|e(?:mbed)?)\/|\S*?[?&]v=)|youtu\.be\/)([a-zA-Z0-9_-]{11})/;
console.log(url.match(VID_REGEX)[1]);
输出
BnJWi0E3Mv0
示例2: 该示例首先通过使用 split()和substring()方法 将URL分割,然后获取字符串的一部分。
let url = 'https://www.youtube.com/watch?v=da9gTKWIivA';
console.log(url.split("v=")[1].substring(0, 11));
输出
da9gTKWIivA