1. var uniqueOccurrences = function(arr){
    2. //新建一个map用于存放key:value--> arr中的元素:该元素对应出现的次数
    3. let map = new Map();
    4. //对传入的arr进行遍历
    5. for(let i =0;i<arr.length;i++){
    6. //若map中有arr遍历的元素,则让map中对应的元素的次数加1
    7. if(map.has(arr[i])){
    8. map.set(arr[i],map.get(arr[i])+1)
    9. //若map中没有arr遍历的元素,则在map中设置一个新键值对 key为该遍历的元素 value为1
    10. }else{
    11. map.set(arr[i],1)
    12. }
    13. }
    14. let res =[],work=[];
    15. //对map中的键值对进行遍历
    16. for([key,value]of map){
    17. //将所有元素对应的次数添加到res数组
    18. res.push(value);
    19. }
    20. //对该数组进行排序
    21. res.sort();
    22. //对res遍历
    23. for(let i = 0;i<res.length;i++){
    24. //判断相邻的两个元素是否相同
    25. if(res[i]===res[i+1]){
    26. work.push(false)
    27. }else{
    28. work.push(true)
    29. }
    30. }
    31. return work.indexOf(false)===-1;
    32. }