【发布时间】:2017-08-07 22:20:30
【问题描述】:
当我想突出显示页面中所有缩短的链接时,我试图避免潜在的问题。目前我有这个代码:
$('a').each(function() {
var urlHref = $(this).attr('href');
var shortenedLinks = ["bit.ly", "amzn.to","goo.gl","t.co","lnkd.in"];
for (var item in shortenedLinks) {
if (urlHref.includes(shortenedLinks[item])) {
console.log('yes');
} else {
console.log('no');
}
}
});
这很好用,因为控制台中的结果是:
是的
(4) 没有
潜在问题
目前,对于每个链接,它都会遍历数组并比较 URL 的一部分。这对于少量 URL 来说很好,但是我有大约 80 个 URLshortener 服务,如果页面包含 80 个链接,这将是 6,400 次检查。
我在页面上的几个链接和所有缩短的 url 提供程序上尝试了这个,但花了一些时间来浏览它们。
问题
有没有办法加快这个过程,这样我就可以在不循环的情况下检查数组和部分 url?
【问题讨论】:
-
这应该移到代码审查 :)
标签: jquery optimization