Javascript 在字符串末尾实现通配符
我浏览了很多帖子(和其他网站),似乎遇到了一个障碍。我有以下数组:Javascript 在字符串末尾实现通配符,javascript,arrays,wildcard,Javascript,Arrays,Wildcard,我浏览了很多帖子(和其他网站),似乎遇到了一个障碍。我有以下数组: var data_dictionary = ["youtube.com", "facebook.com", "youtube.com/feed/subscriptions", "twitter.com"] 我正在尝试返回youtube.com*上所有内容的数据。下面是我的函数的相关片段: var result = [] for (var i=0; i<data_dictionary.length; i++) {
var data_dictionary = ["youtube.com", "facebook.com", "youtube.com/feed/subscriptions", "twitter.com"]
我正在尝试返回youtube.com*上所有内容的数据。下面是我的函数的相关片段:
var result = []
for (var i=0; i<data_dictionary.length; i++) {
if (data_dictionary[i].page == /^youtube.com/) {
result.push (data_dictionary[i].page,data_dictionary[i].share)
}
}
break;
}
return result
您可以使用方法筛选数组,并使用检查匹配
var data_dictionary=[“youtube.com”、“facebook.com”、“youtube.com/feed/subscriptions”、“twitter.com];
功能检查(数据字典){
返回数据字典过滤器(函数(v){
返回/^youtube\.com/.test(v);
//使用indexOf
//v.indexOf('youtube.com')==0;
});
}
日志(检查(数据字典))代码>使用与以前相同的方法。不过,使用“.filter”并不是一个坏主意,但我建议您比较它们的基准测试
var data_dictionary = ["youtube.com", "facebook.com", "youtube.com/feed/subscriptions", "twitter.com"];
var pattern = /^youtube.com/;
var result = [];
var i = 0;
function loop (args) {
for (i; i < args.length; i++) {
if (pattern.test(args[i])) {
result.push(args[i]);
}
}
return result;
}
console.log(loop(data_dictionary)) // ["youtube.com" , "youtube.com/feed/subscriptions"]
var data_dictionary=[“youtube.com”、“facebook.com”、“youtube.com/feed/subscriptions”、“twitter.com];
var pattern=/^youtube.com/;
var结果=[];
var i=0;
函数循环(args){
对于(i;i
比较下面的速度,我建议您使用上面的方法
这里不需要正则表达式,您可以这样做
var data_dictionary=[“youtube.com”、“facebook.com”、“youtube.com/feed/subscriptions”、“twitter.com”],
filtered=data\u dictionary.filter(e=>!!~e.indexOf(“youtube.com”)&&e);
document.write(“+JSON.stringify(过滤)+”)
要与正则表达式进行比较,请使用数据字典[i].page.match(/^youtube.com/)
非常有效!很高兴了解这一点(对JS来说非常新)。
var data_dictionary = ["youtube.com", "facebook.com", "youtube.com/feed/subscriptions", "twitter.com"];
var pattern = /^youtube.com/;
var result = [];
var i = 0;
function loop (args) {
for (i; i < args.length; i++) {
if (pattern.test(args[i])) {
result.push(args[i]);
}
}
return result;
}
console.log(loop(data_dictionary)) // ["youtube.com" , "youtube.com/feed/subscriptions"]