字串、數組方法實戰--charAt(),split(),indexOf(),substring()

來源:互聯網
上載者:User

標籤:split   屬性   .com   賦值   bsp   sub   輸入   indexof   value   

這篇隨筆根據兩個面試題來實戰一下數組、字串的一些方法。

題一:一個字串中找出出現次數最多的字元次數

 1 var str = ‘fuuhuhuhufaihuhfnkjNKCNIO‘;? 2     function num(str) { 3         var json = {}; 4         for (var i = 0; i < str.length; i++){ 5             //字串的charAt()方法返回指定位置的字串 6             if(!json[str.charAt(i)]){//若json對象中沒有當前屬性,則給當前屬性賦值為1 7                 json[str.charAt(i)] = 1; 8             }else{ 9                 json[str.charAt(i)]++;//若json對象中已經有當前屬性,則將當前屬性值+110             }11         }12         var iMax = 0;13         var iIndex = ‘‘;14         for(var i in json){//for in遍曆json對象的屬性15             if(json[i]>iMax){16                 iMax = json[i];17                 iIndex = i;18             }19         }20         console.log(‘出現次數最多的是:‘+iIndex+‘出現‘+iMax+‘次‘);21     }22     num(str);

題二:輸出相應字串的值

具體描述:給定一個url字串,如var url="http://www.baidu.com/?username=xiaohua&password=262763"; 當我們輸入username,輸出username的值

方法一

 1  var url="http://www.baidu.com/?username=xiaohua&password=262763"; 2     function urle(key) { 3         var value=""; 4         var cc = url.split(‘?‘)[1].split(‘&‘); 5         for(var i=0;i<cc.length;i++){ 6             var r = cc[i]; 7             var a = r.split(‘=‘); 8             if (key==a[0]){ 9                 value = a[1];10                 break;11             }12         }13         return value;14     }15     console.log(urle(‘username‘));//xiaohua

url.split(‘?‘)將url字串轉化成數組:["http://www.baidu.com/", "username=xiaohua&password=262763"],現將原來字串‘?‘後面的字串提取出來然後再轉化成數組代碼如第四行

方法二

 1 function urle(key) { 2         var value = ""; 3         var aa = url.indexOf(‘?‘); 4         var bb = url.substring(aa+1); 5         var cc = bb.split(‘&‘); 6         for(var i=0;i<cc.length;i++){ 7             var r = cc[i]; 8             var a = r.split(‘=‘); 9             if (key==a[0]){10                 value = a[1];11                 break;12             }13         }14         return value;15     }16     console.log(urle(‘username‘));//xiaohua

 

字串、數組方法實戰--charAt(),split(),indexOf(),substring()

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.