三个前端面试题

版权声明:欢迎转载 https://blog.csdn.net/feinifi/article/details/85343425

1、写一个字符串转驼峰的方法?
-例如:border-bottom-color->borderBottomColor
2、查找字符串中出现最多次数的字符和个数?
-例如:sdjksfssscfssdd->字符最多的是s,出现了7次
3、如何给字符串加千分符?
-例如:3562123761->3,562,123,761

var str = "border-bottom-color";
function test1(str){
    var arr = str.split("-");
    for(var i=1;i<arr.length;i++){
        arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].substring(1);
    }
    return arr.join("");
}
console.log("1[common ]:",test1(str));

function test1reg(str){
    var reg = /-(\w)/g
    return str.replace(reg,function($0,$1){
        return $1.toUpperCase();
    });
}
console.log("1[regular]:",test1reg(str));

var str2 = "sdjksfssscfssdd";
function test2(str){
    var obj = {};
    var num = 0;
    var value = "";
    for(var i=0;i<str.length;i++){
        if( !obj[ str[i] ] ){
            obj[ str[i] ] = [];
        }
        obj[ str[i] ].push(str[i]);
    }
    for(var arr in obj){
        if(num<obj[arr].length){
            num = obj[arr].length;
            value = obj[arr][0];
        }
    }
    return {key:value,count:num};
}
console.log("2[common ]:",test2(str2));
function test2reg(str){
    var arr = str.split("");
    arr.sort();
    var str = arr.join("");
    var reg = /(\w)\1+/g;
    var num = 0;
    var value = "";
    str.replace(reg,function($0,$1){
        if(num<$0.length){
            num = $0.length;
            value = $1;
        }
    });
    return {key:value,count:num};
}
console.log("2[regular]:",test2reg(str2));
var str3 = "3562123761";
function test3(str){
    var prev = "";
    var iNum = str.length%3;
    var arr = [];
    if(iNum!=0){
        prev = str.substring(0,iNum);
        arr.push(prev);
    }
    str = str.substring(iNum);
    for(var i=0;i<str.length;i+=3){
        arr.push(str.substring(i,i+3));
    }
    return arr.join(","); // <- [3,562,123,761].join(",")
}
console.log("3[common ]:",test3(str3));
function test3reg(str){
    var reg = /(?=(?!\b)(\d{3})+$)/g
    return str.replace(reg,",");
}
console.log("3[regular]:",test3reg(str3));

运行结果:

猜你喜欢

转载自blog.csdn.net/feinifi/article/details/85343425