(1)去除数组中的重复值;
// 编写一个方法 去掉一个数组的重复元素
var arr = [1,2,3,4,5,2,3,4];
console.log(arr);
var aaa = fn(arr);
console.log(aaa);
//思路:创建一个新数组,循环遍历,只要新数组中有老数组的值,就不用再添加了。
function fn(array){
var newArr = [];
for(var i=0;i<array.length;i++){
//开闭原则
var bool = true;
//每次都要判断新数组中是否有旧数组中的值。
for(var j=0;j<newArr.length;j++){
if(array[i] === newArr[j]){
bool = false;
}
}
if(bool){
newArr[newArr.length] = array[i];
}
}
return newArr;
}
(2) ["c","a","x","a","x","a"]找到数组中每一个元素出现的次数
//利用对象来做。我们想知道,a出现了几次,c出现了几次,x出现了几次。
//k:v .. k:v使用键值对比较方便,而使用数组,不太方便了。
//思路:创建一个对象,判断数组中的元素,在对象中是否存在,如果存在,值+1;否则创建一个数组元素的属性,然后给值赋值为1;
var arr5 = ["c","a","x","a","x","a"];
var json = {};
// console.log(json["aflasdfasdf"]); 不存在的属性,返回值是undefined。
for(var i=0;i<arr5.length;i++){
//判断数组中的元素,在json中是否存在属性值。
if(json[arr5[i]]){
json[arr5[i]] += 1;
}else{
json[arr5[i]] = 1;
}
}
console.log(json);