字符串,数组常见例题

发布时间:2020-07-10 16:56:30 作者:wx5d13575cbfad1
来源:网络 阅读:345

1:在一串字符串中找出最长的字符

var st="The quick brown fox jumped bcaked jumped abscefg over the lazy dog 15625765675276";
     function zifuchuanmax(str){
         var arr=str.split(" ");//将字符串转化为数组
         var max=arr[0];
         for(var i=1;i<arr.length;i++){
             if(max.length<arr[i].length){
                 max=arr[i];
             }
         }
         return max;
     }
     console.log(zifuchuanmax(st));//15625765675276

做题方法:首先利用split方法将字符串转化为数组,定义一个变量,将数组的第一个元素赋值给这个变量,然后用for循环将数组中的元素与该变量依次比较,如果比该变量长,则将该元素赋值给变量
2:数组去重,将一个数组中相同的元素去掉

var arr = [1, 1, 2, 3, 4, 3, 5, 5, 6, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9];
     function szqc(array){
         for(var i=0;i<array.length;i++){
             var same=array[i];
             for(var k=i+1;k<array.length;k++){
                 if(same==array[k]){
                     array.splice(k,1);//删除元素之后,后面元素会自动补位,但下次循环系统会自动跳过该位置元素,所以补位元素就会被忽略
                     k--;//退回去会将补位元素不被忽略
                 }
             }
         }
         return array;
     }
     console.log(szqc(arr));// [1, 2, 3, 4, 5, 6, 7, 8, 9]

3:字符串翻转
方法一:

var str = "abcdefghi";
console.log(str.split("").reverse().join(""));//ihgfedcba

将字符串转化为数组,然后利用数组的方法reverse将数组翻转,然后再用join()将其转化为字符串
方法二:

var str = "abcdefghi";
 function fanzhuan(str){
         var dao="";//定义一个空字符串
         for(var i=str.length-1;i>=0;i--){
             dao+=str.charAt(i);
         }
         return dao;
     }
     console.log(fanzhuan(str));//ihgfedcba

在函数中定义一个新的空字符串,然后利用for循环,倒叙取出原字符串中元素,叠加
4:
统计一个字符串中出现最多的及其出现的次数给出一个字符串,统计出现次数最多的字母。如:“cccccccccasdfssaaasasasasaadddddddd”,

var str1 = "cccccccccasdfssaaasasasasaadddddddd";
function findChar(str) {
        var ss = moveNumber(str.split(""));//先利用数组去重,将每个元素取出
        /*[a,c,f,h]*/
        var list = [];
        for (var i = 0; i < ss.length; i++) {
                var count = 0;
                for (var index in str) {
                        if (ss[i] == str.charAt(index)) {
                                count++;
                        }//
                }
                list.push([ss[i], count]);
        }
        var tong = 1;
        for (var i = 0; i < list.length; i++) {
                if (list.length <= tong)break;
                if (list[i][1] > list[i + 1][1]) {
                        list.splice(i + 1, 1);
                        i--;
                }
                else if (list[i][1] < list[i + 1][1]) {
                        list.splice(i, 1);
                        i--;
                }
                else {
                        tong++;
                }
        }
        return function () {
                var strlist = "";
                for (var i = 0; i < list.length; i++) {
                        strlist += list[i][0] + "---" + list[i][1] + "个"
                }
                return strlist;
        }

}
console.log(findChar(str1)());//c---9个a---9个d---9个
推荐阅读:
  1. mysql 子查询高级经典例题
  2. javascript常见数组及操作方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

字符串 数组 符串

上一篇:解决启动mysql服务出现错误2的方法

下一篇:php的开发国家是哪个

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》