美文网首页网页前端后台技巧(CSS+HTML)Web前端之路
js获取字符串中最长单词长度的3种方法

js获取字符串中最长单词长度的3种方法

作者: 爱抽烟的芭比 | 来源:发表于2017-02-27 21:38 被阅读1272次

    方法1: 先按空格把字符串转换成数组,然后用for循环获取每一个数组元素的长度,再比较大小:

    function findLongestWord(str) {
      var length = 0;
        
        var strArray = str.split(' ');
        
        for(var i = 0;i < strArray.length;i++)
        {
            length = strArray[i].length > length ? strArray[i].length : length;
        }
        
        return length;
    }
    
    findLongestWord("Hello world My  heart will go on the day after tomorrow");
    

    方法2:把字符串转化成数组后,用sort()函数给数组排序:

    function findLongestWord1(str) {
        var strArray = str.split(' ');
        strArray.sort(function (a,b) {
            return b.length - a.length;
        });
            
        return strArray[0].length;
    }
    

    方法3:转化成数组后,用map()函数生成一个保存每个单词长度的新数组,然后用reduce()函数取到最大值:

    function findLongestWord2(str) {
        var strArray = str.split(' ');
        var lengthArray = strArray.map(function(val){
            return val.length
        });
        
        return lengthArray.reduce(function (p,c) {
            return Math.max(p, c);
        });
    }
    

    相关文章

      网友评论

        本文标题:js获取字符串中最长单词长度的3种方法

        本文链接:https://www.haomeiwen.com/subject/ohdtgttx.html