zoukankan      html  css  js  c++  java
  • javascript:字符串字符统计的练习总结

    题目要求是,函数count会统计传入的字符串和其字符串出现的个数,并返回给Object()对象。

    做这道题目的关键点是:

    1.首先要有一个能统计字符串的对象。

    2.需要遍历传入的字符串。

    3.判断当前遍历的字符在这个字符串中出现的次数。

    根据以上关键点,写出代码:

     1 var resultObject = {};
     2 var str = 'javascript';
     3 
     4 function count( str ){
     5   for( var i = 0; i < str.length; i++){  //循环传入的变量str
     6     var key = str.charAt(i);   //将本次循环字符串中的字符,保持在变量key中
     7     if(resultObject[key]){    //判断resultObj对象中,有没有本次循环字符串中的字符
     8       resultObject[key]++;  //如果有则为对象中的属性值加1
     9     } else {
    10       resultObject[key] = 1;  //如果没有则重置在对象中的属性值为1
    11     }
    12   }
    13   return resultObject;
    14 }
    15 
    16 var result = count(str);
    17 console.log(result);

    最后输出变量result,我们就得到了:{j: 1, a: 2, v: 1, s: 1, c: 1, …}

    这里有个关键的知识点,就是访问属性的方法,我整理了下,一共有两种。

    1.点访问法,通过在对象名称后面加点,来访问对象的属性。

    例: 

    var food = {
        name:'apple',
        color:'red'
      }
      console.log(food.name); //得到apple

    2.方括号访问法,有两种访问方式,第一种是通过访问变量,来访问对象的属性;第二种是直接访问对象的属性。

    例:

    var food = {
        name:'apple',
        color:'red'
      }
      var foodName = 'color';
      console.log(food[foodName]); //得到red
       console.log(food['color']); //同样也得到red    

    最重要的是用方括号法访问的对象属性是变量,是动态的,在这道题里就可以通过这个方法,通过访问变量key(就相当于访问对象resultObject的属性),并给对象的属性添加值。

  • 相关阅读:
    服务器磁盘脱机无法挂载
    go 字符串操作相关
    golang 系列:atomic 原子操作
    UUID简介及 Golang实现
    go 图片base64转二进制
    golang go 中字符串和各种int类型之间的相互转换方式
    Go 获取当前时间 时间格式的转换 秒、毫秒、纳秒时间戳输出
    Go语言中调用C语言类型转换篇
    Supervisor 部署go gin服务 或在Linux下面独立部署
    Go语言对字符串进行SHA1 哈希运算的方法
  • 原文地址:https://www.cnblogs.com/pine-cone/p/8623602.html
Copyright © 2011-2022 走看看