微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

编写一个接受 URL 数组并返回预期输出的域频率“分类”函数

如何解决编写一个接受 URL 数组并返回预期输出的域频率“分类”函数

输入:

const urls = [
    'www.google.com','www.yahoo.com','xyz.www.google.com','abc.xyz.www.google.com','google.com','yahoo.com','news.yahoo.com','abc.news.yahoo.com',];
categorize(urls);

上面的分类函数应该返回下面的输出。 例如,“www.google.com”出现在“www.google.com”、“xyz.www.google.com”、“abc.xyz.www.google.com”等中。 “google.com”出现在“google.com”、“www.google.com”、“xyz.www.google.com”、“abc.xyz.www.google.com”等中。

预期输出

{
 "google.com": 6,"yahoo.com": 5,"www.google.com": 4,"www.yahoo.com": 2,"news.yahoo.com": 2,"xyz.www.google.com": 3,"abc.news.yahoo.com": 1,"abc.xyz.www.google.com": 2,"com": 11
}

解决方法

您首先需要创建一个对象,例如 const categorized = {}

然后使用 for 循环(或 forEach)遍历 url。

对于每个网址,您需要找到所有可能的域。可能有一些很好的方法可以做到这一点。

对于每个域,如果对象尚不存在,则将其添加到对象中并将值设置为 1。如果该键已存在,则将其添加到值中。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。