python 列表去重(数组)的几种方法

2024年12月03日 20:13
有1个网友回答
网友(1):

function clear(arr) {// 1 如何获取数组中每一个元素出现的次数var o = {}; // 1.1 记录数组中元素出现的次数for (var i = 0; i < arr.length; i++) {var item = arr[i]; // 数组中的每一个元素// o[item] = 1;// 1.2 判断o对象是否有当前遍历到的属性if (o[item]) {// 如果o[item] 存在,说明次数不为1o[item]++;} else {// 如果o[item] 不存在,说明是第一次出现o[item] = 1;}}// console.log(o); // 2 生成一个新的数组,存储不重复的元素var newArray = [];// 2.1 遍历对象o中的所有属性for (var key in o) {// 2.2 判断o对象中当前属性的值是否为 1 如果为1 说明不重复直接放到新数组中if (o[key] === 1) {newArray.push(key);} else {// o对象中当前属性 次数不为1 ,说明有重复的,如果有重复的话,只存储一次// 判断当前的newArray数组中是否已经有该元素 if (newArray.indexOf(key) === -1) {newArray.push(key);}}}return newArray;} var array = ['c', 'a', 'z', 'a', 'x', 'a'];var newArray = clear(array);console.log(newArray);