Javascript 在这种情况下,是否要将字符串拆分为数组?

Javascript 在这种情况下,是否要将字符串拆分为数组?,javascript,Javascript,我得到20个youtube id,我想得到第一个和第二个id 这20个数据如下: /watch?v=2ZBaOvX6ktU,/watch?v=7bj15kbLOZU,/watch?v=UYh1yxSi2UA,/watch?v=72qeHHapFF8,/watch?v=vkmvqhArZ8M,/watch?v=adadLSFLAd4,/watch?v=MkOYvjq50c8,/watch?v=h8gcqI0s9hM,/watch?v=g_olO2htTi0,/watch?v=vaWSeYdGqjM

我得到20个youtube id,我想得到第一个和第二个id

这20个数据如下:

/watch?v=2ZBaOvX6ktU,/watch?v=7bj15kbLOZU,/watch?v=UYh1yxSi2UA,/watch?v=72qeHHapFF8,/watch?v=vkmvqhArZ8M,/watch?v=adadLSFLAd4,/watch?v=MkOYvjq50c8,/watch?v=h8gcqI0s9hM,/watch?v=g_olO2htTi0,/watch?v=vaWSeYdGqjM,/watch?v=ZDak5qhlLoU,/watch?v=68Uo_yn_ssc,/watch?v=sIaoXv69IJA,/watch?v=asiDjf546W8,/watch?v=bfxikjXaki4,/watch?v=wRvG6ZjFD28,/watch?v=0Kj3XhLqAQM,/watch?v=nN42e8AM4R4,/watch?v=ST0EZqRdQKI
但当我试图将字符串拆分为数组时,它显示
TypeError:undefined不是构造函数

我不知道为什么任何建议都会得到赞赏

这是我的密码:

var youtubeId = [];

youtubeId[idCount] = this.evaluate(getYoutubeId);

console.log(youtubeId[idCount]);// 20 data

var sourceId = youtubeId[idCount];

var id = [];

id = sourceId.split(",");// this code show error

console.log('\n' + id + '\n');

如果一个字符串中有20个youtube ID,则可以获得前两个ID,如下所示

var str = //your 20 ids string here
var res = str.split(",");
alert("first",res[0]);
alert("second",res[1]);

如果一个字符串中有20个youtube ID,则可以获得前两个ID,如下所示

var str = //your 20 ids string here
var res = str.split(",");
alert("first",res[0]);
alert("second",res[1]);

如果20个youtube id在一行中,并且您想要打印2个youtube id,那么下面的代码应该适合您


在这里,我首先用逗号分割整个字符串,得到19个字符串,然后再用等号(=)分割,得到两个部分,其中第二个部分是您的id

这将像2ZBaOvX6ktU一样打印ID,然后在下一行中打印7bj15kbLOZU

var string = "/watch?v=2ZBaOvX6ktU,/watch?v=7bj15kbLOZU,/watch?v=UYh1yxSi2UA,/watch?v=72qeHHapFF8,/watch?v=vkmvqhArZ8M,/watch?v=adadLSFLAd4,/watch?v=MkOYvjq50c8,/watch?v=h8gcqI0s9hM,/watch?v=g_olO2htTi0,/watch?v=vaWSeYdGqjM,/watch?v=ZDak5qhlLoU,/watch?v=68Uo_yn_ssc,/watch?v=sIaoXv69IJA,/watch?v=asiDjf546W8,/watch?v=bfxikjXaki4,/watch?v=wRvG6ZjFD28,/watch?v=0Kj3XhLqAQM,/watch?v=nN42e8AM4R4,/watch?v=ST0EZqRdQKI";
var arr = string.split(/[\s,]+/);
    console.log(arr[0].split("=")[1]);
    console.log(arr[1].split("=")[1]);

如果要打印“/watch?v=2ZBaOvX6ktU”,则可以编写console.log(arr[i])

如果20个youtube id在一行中,并且您想要打印2个youtube id,那么下面的代码应该适合您


在这里,我首先用逗号分割整个字符串,得到19个字符串,然后再用等号(=)分割,得到两个部分,其中第二个部分是您的id

这将像2ZBaOvX6ktU一样打印ID,然后在下一行中打印7bj15kbLOZU

var string = "/watch?v=2ZBaOvX6ktU,/watch?v=7bj15kbLOZU,/watch?v=UYh1yxSi2UA,/watch?v=72qeHHapFF8,/watch?v=vkmvqhArZ8M,/watch?v=adadLSFLAd4,/watch?v=MkOYvjq50c8,/watch?v=h8gcqI0s9hM,/watch?v=g_olO2htTi0,/watch?v=vaWSeYdGqjM,/watch?v=ZDak5qhlLoU,/watch?v=68Uo_yn_ssc,/watch?v=sIaoXv69IJA,/watch?v=asiDjf546W8,/watch?v=bfxikjXaki4,/watch?v=wRvG6ZjFD28,/watch?v=0Kj3XhLqAQM,/watch?v=nN42e8AM4R4,/watch?v=ST0EZqRdQKI";
var arr = string.split(/[\s,]+/);
    console.log(arr[0].split("=")[1]);
    console.log(arr[1].split("=")[1]);

如果要打印“/watch?v=2ZBaOvX6ktU”,则可以编写console.log(arr[i])

这个.evaluate(getYoutubeId)返回一个字符串?@marvel308看起来像是返回一个arrayid=sourceId.split(“,”);如果它是一个用于提醒的数组,则不起作用,我认为它首先是一个字符串…mybad。在sourceId上执行拆分this.evaluate(getYoutubeId)返回一个字符串?@marvel308看起来像是返回一个arrayid=sourceId.split(“,”);如果它是一个用于提醒的数组,则不起作用,我认为它首先是一个字符串…mybad。在SourceId上进行拆分非常感谢,它现在可以工作了!我仍然在努力理解你的代码,普通的快车对我来说很难。另外,如果我发现了错误,我应该像下面这样更改代码
var sourceId=“””“+youtubeId[idCount]+”然后将修复错误。在这里,我首先用逗号拆分整个字符串,得到19个字符串,然后我再次用等号(=)拆分,得到两个部分,其中第二个部分是您的id。我现在就得到了!谢谢你,技术官僚。非常感谢你,它现在起作用了!我仍然在努力理解你的代码,普通的快车对我来说很难。另外,如果我发现了错误,我应该像下面这样更改代码
var sourceId=“””“+youtubeId[idCount]+”然后将修复错误。在这里,我首先用逗号拆分整个字符串,得到19个字符串,然后我再次用等号(=)拆分,得到两个部分,其中第二个部分是您的id。我现在就得到了!谢谢技术官僚。嘿,谢谢你的帮助,我从技术官僚那里得到了答案。嘿,谢谢你的帮助,我从技术官僚那里得到了答案。