【问题标题】:How to solve following problem in JavaScript?如何解决JavaScript中的以下问题?
【发布时间】:2021-03-04 00:16:36
【问题描述】:

我们有一个包含许多网站名称的数组。例如,www.google.comwww.msn.comwww.amazon.co.in、in.answers.yahoo.com、en.m.wikipedia.com、codehs.gitbooks.io、www.coderanch.com 等。搜索所有以“www”并显示此类网站的总数。例如。以上,一共4个。

我尝试过使用string.search()string.match() 方法,也使用过Regular Expressions,但它们都不起作用。谁能帮我吗? 我试过了:

function myFun(){
                var arr = ["www.google.com", "www.msn.com", "www.amazon.co.in", "in.answers.yahoo.com", 
                            "en.m.wikipedia.com", "codehs.gitbooks.io", "www.coderanch.com"];
                
                var count = 0;
                var str= arr.toString();
                console.log(str);
                if(str == /www/g){
                    count ++;
                }
                document.write(count);
            }

【问题讨论】:

  • 显示您尝试过但不起作用的方法....
  • 为什么不使用str.startsWith('www')

标签: javascript arrays string search methods


【解决方案1】:

function myFun(){
    let arr = [
      "www.google.com",
      "www.msn.com",
      "www.amazon.co.in",
      "in.answers.yahoo.com", 
      "en.m.wikipedia.com",
      "codehs.gitbooks.io",
      "www.coderanch.com"
    ];
    let count = arr.reduce((c,i)=> {
      i.split(".")[0]==='www' && c++ ;
      return c;
    },0);
    document.write(count);
}

myFun();

【讨论】:

    【解决方案2】:
    function searchWebsite(){
        var arr = ["www.google.com", "www.msn.com", "www.amazon.co.in", "in.answers.yahoo.com", "en.m.wikipedia.com", "codehs.gitbooks.io", "www.coderanch.com"];
        var count = 0;
        var pattern = new RegExp("www", "i");
        for(i=0;i<arr.length;i++){
            var result = pattern.test(arr[i]);
            if(result){
            count ++;
             }
        }
        document.write(count);
    }
    

    【讨论】:

    • 您能否edit 解释您的代码、您编辑的内容以及原因?
    猜你喜欢
    • 1970-01-01
    • 2014-05-03
    • 2011-12-01
    • 2023-01-23
    • 2021-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多