[removed] find longest word in a string

前端 未结 30 2717
余生分开走
余生分开走 2020-11-27 03:50
function longestWord(string) {
    var str = string.split(\" \");
    var longest = 0;
    var word = null;
    for (var i = 0; i < str.length - 1; i++) {
                


        
30条回答
  •  佛祖请我去吃肉
    2020-11-27 04:17

    ForEach is faster in FF but slower in Chrome, but for loop with the cached length and function apply/call is quite faster in both FF and chrome.

    Hope the below code helps:

    function getLongest (arrStr) {
      var longest = 0, word;
    
      for(var i=0 , len = arrStr.length ; i < len ; i++){
    
        if(longest < arrStr[i].length) {
           longest = arrStr[i].length;
           word = arrStr[i];
        }
    
      }
    
      return word;
    }
    
    function isLongest (str) {
      var arrayStr = str.split(' ');
      return function(fn) {
        return fn.apply(this,[arrayStr]);
      }
    }
    
    isLongest("hello aaaaaaaaaaaaaaaaaaaaaaaaa bbb")(getLongest); //aaaaaaaaaaaaaaaaaaaaaaaaa
    

提交回复
热议问题