zoukankan      html  css  js  c++  java
  • 字符串字符统计——js练习

    题目要求

    完善函数 count 的功能

    • 函数 count 会统计传入的字符串其每个字符的的个数,并返回一个结果对象(Object)。
    • 属性名称(key)为统计字符(区分大小写,即 a 不等于 A),属性值(value)为统计字符的个数。

    如 count('javaScript') 会返回一个统计结果对象,该对象表示 javaScript 的字符统计结果。

    count('javaScript'); // 返回结果为 {j: 1, a: 2, v: 1, S: 1, c: 1, r: 1, i: 1, p: 1, t: 1}

    function count(string){
        var strObj = {};
        var strLen = string.length;
        for (var i=0; i<strLen; i++){
            var key = string[i];
            if(strObj[key]){
                strObj[key]++;
            }
            else{
                strObj[key]=1;
            }
        }
        return strObj;
    }

    指导方法如下

    思路:

    • 创建一个统计对象,记录统计结果
    • 使用循环语句遍历字符串的每个字符
    • 对于每个字符,需要依次判断是否已经出现在统计对象中,即统计对象是否还有该属性
    /**
     * 函数 `count` 会统计传入的字符串参数其每个字符的的个数
     * @param {String} str 需要统计的字符串
     */
    function count(str) {
      var resultObj = {}; // 统计对象
      var i = 0;
      var strLen = str.length;
      for (; i < strLen; i++){
        var curChar = str.charAt(i); 
        // 如果结果对象存在该字符的属性,则自增,否则置为1
        if (resultObj[curChar]) {
          resultObj[curChar]++;
        } else {
          resultObj[curChar] = 1;
        }
      }
      // 返回结果
      return resultObj;
    }

    这里使用了 charAt 方法来获取字符串指定位置的字符

    var str = 'abcd';
    // 使用 charAt 方法
    str.charAt(1); // 返回 b
    // 另外也可以通过使用方括号来获取字符串的字符
    str[2]; // c

    定义和用法

    charAt() 方法可返回指定位置的字符。

    请注意,JavaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符

    提示和注释

    注释:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串

     

    关于charAt方法的更多解释:http://www.w3school.com.cn/jsref/jsref_charAt.asp

     
  • 相关阅读:
    YII框架实现排序
    YII2 实现登录时候修改最新登录时间
    YII框架下实现密码修改
    json在PHP中应用技巧
    更换Python pip库镜像地址
    Python3创建RIDE桌面快捷方式的另一种方法
    谈谈测试人员的基本素养
    《微软的软件测试之道》阅读笔记
    PPT如何一页多张打印且铺满整个页面
    Linux 在线模拟器
  • 原文地址:https://www.cnblogs.com/chivasknight/p/8277598.html
Copyright © 2011-2022 走看看