用对象[属性]表示属性值 记录字符出现的次数

<script type="text/javascript">
     var str="hellomainlanguageoo";
     var obj={};
     for(var i=0;i<str.length;i++){
      var chars=str.charAt(i);
      if(obj[chars]){
       obj[chars]++;
      }else{
       obj[chars]=1;
      }
     }
     console.log(obj);
     var max=0;
     var maxChar=null;
     for(var chars in obj){
      if(max<obj[chars]){
       max=obj[chars];
       maxChar=chars;
      }
     }
     console.log("出现最多的是"+maxChar+"总共出现"+max+"次");
 </script>

转载于:https://www.cnblogs.com/hngdlxy143/p/6880400.html

### 判断数组内对象的某个属性值是否多次出现 为了检测 JavaScript 数组中的对象是否有重复的特定属性值,可以创建一个辅助函数来遍历数组并跟踪每个属性值的发生次数。如果任何属性值发生超过一次,则返回 `true` 表明存在重复;否则返回 `false`。 ```javascript function hasDuplicatePropertyValues(array, propertyName) { const occurrences = {}; for (const item of array) { if (propertyName in item) { const value = item[propertyName]; if (!occurrences[value]) { occurrences[value] = 0; } occurrences[value]++; if (occurrences[value] > 1) { return true; } } } return false; } ``` 此代码定义了一个名为 `hasDuplicatePropertyValues` 的函数,它接受两个参数:一个是包含多个对象的数组,另一个是要检查的对象属性名称字符串。通过迭代给定的数组,并利用对象 `occurrences` 来记录各个属性值的数量,一旦发现某项数量大于一即刻停止循环并返回真值表示有重复[^1]。 对于更复杂的场景或性能考虑,还可以采用其他方式实现相同的功能,比如使用 Map 数据结构替代普通对象存储键值对关系: ```javascript function hasDuplicatePropUsingMap(array, propName) { let map = new Map(); for (let i = 0; i < array.length; ++i) { let val = array[i][propName]; if (map.has(val)) { return true; } else { map.set(val, 1); } } return false; } ``` 这段代码同样实现了上述功能,但是采用了 ES6 中引入的新特性——Map 类型作为内部计数器的数据容器。这有助于提高程序处理大数据集时的表现效率[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值