侧边栏壁纸
  • 累计撰写 225 篇文章
  • 累计创建 275 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

前端面试题(六)

DGF
DGF
2018-03-29 / 0 评论 / 0 点赞 / 13 阅读 / 0 字

判断一个字符串中出现次数最多的字符,统计这个次数

方法一

将字符串的字符保存在一个hash table中,key是字符,value是这个字符出现的次数:

var str = "adgfdgfbcdefgaddda";
var obj = {};
for (var i = 0, l = str.length; i < l; i++) {
  var key = str[i];
  if (!obj[key]) {
     obj[key] = 1;
  } else {
     obj[key]++;
  }
}
/* 遍历这个hash table,获取value最大的key和value */
var max = -1;
var max_key = "";
var key;
for (key in obj) {
  if (max < obj[key]) {
     max = obj[key];
     max_key = key;
  }
}
console.log("max:" + max + " max_key:" + max_key);
方法二
var aa = '121321';
var str = aa.split(''); // 将字符串转换为字符数组
var m = {}, k = 0; // k记录重复次数
for (var i = 0; i < str.length; i++) {
    for (var j = 0; j < str.length; j++) {
        if (str[i] == str[j])
            k++;
    }
    var x = str[i];
    m[x] = k;
    k = 0;
};
console.log(m) // Object {1: 3, 2: 2, 3: 1}

JS有那些数据类型

JavaScript中包含6种数据类型:undefinednullstringnumberbooleanobject。其中,前5种是原始数据类型,object 是对象类型。object 类型中包括 ObjectFunctionStringNumberBooleanArrayRegexpDateGlobelMathError,以及宿主环境提供的 object 类型。

下面结果是什么?

var str1 = new String('abc');
var str2 = 'abc';

请问 str1 === str2 吗?

答案是:falsetypeof str1 类型是 objecttypeof str2 类型是 string

0

评论区