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的属性),并给对象的属性添加值。

  • 相关阅读:
    cron表达式详解(转载)
    Swagger 3.0使用教程(转载)
    springboot整合shiro-对密码进行MD5并加盐处理(十五)(转载)
    redis排序
    引用和指针的区别?
    测试策略
    主键、外键的作用,索引的优点与不足?
    您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)
    UI测试测什么
    数据库,数据库管理系统,数据库系统三者的区别和练习?
  • 原文地址:https://www.cnblogs.com/pine-cone/p/8623602.html
Copyright © 2011-2022 走看看