Dus*_*ilk 3 javascript arrays google-chrome
我有一个列出几个网站的数组:
var validSites = new Array();
validSites[0] = "example_1.com";
validSites[1] = "example_2.com";
validSites[2] = "example_3.com";
Run Code Online (Sandbox Code Playgroud)
现在我有一个小脚本,可以检查你所在的网址,并可以返回这样的内容:
example_1.com/something/something_else
Run Code Online (Sandbox Code Playgroud)
现在我需要检查该地址是否是有效站点之一.所以
example_1.com/*ANYTHING*
Run Code Online (Sandbox Code Playgroud)
会传递正确的.但
exampleshmample.com
Run Code Online (Sandbox Code Playgroud)
会传递不正确.
现在我知道你可以做一个indexOf(),它可以检查字符串是否是字符串的一部分,如果为false则返回-1.但我如何通过整个阵列检查它?
Ps - 用于Chrome扩展程序.
谢谢
这是一个想法:
var str = 'example_1.com/something/something_else';
if( validSites.indexOf( str.split('/')[0] ) > -1 ) {
// is valid
}
Run Code Online (Sandbox Code Playgroud)
另一个是在连接数组上使用regexp:
var str = 'example_1.com/something/something_else';
new RegExp('^('+validSites.join('|')+')','i').test(str);
Run Code Online (Sandbox Code Playgroud)
这也将匹配f.ex example_1.comyoyoyo