• 字符串、数组方法实战--charAt(),split(),indexOf(),substring()


    这篇随笔根据两个面试题来实战一下数组、字符串的一些方法。

    题一:一个字符串中找出出现次数最多的字符次数

     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对象中已经有当前属性,则将当前属性值+1
    10             }
    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
  • 相关阅读:
    每日日报2021.5.14
    每日日报2021.5.13
    每日日报2021.5.12
    每日日报2021.5.11 冲刺第十天
    《梦断代码》读后感3
    每日日报2021.5.10 冲刺第九天
    《梦断代码》读后感2
    每日日报2021 5/23
    每日日报2021 5/22
    每日日报2021 5/21
  • 原文地址:https://www.cnblogs.com/daicunya/p/6259314.html
Copyright © 2020-2023  润新知