首先写一个统计数组元素个数的程序:
- 首先定义一个对象
- 然后遍历数组中的每一个元素,将每个元素逐次放入o中
- 利用if语句进行判断,每个元素的是否放入,和个数
var array = ['c', 'a', 'z', 'a', 'x', 'a'];
function clear() {
var o = {};//定义一个对象
for (var i = 0; i < array.length; i++) {
var item = array[i];
if (o[item]) { //判断item是否在数组arry里
o[item]++;
}else{
o[item] = 1;
}
}
下面这个程序是用来去重的:
具体步骤如下:
- 创建一个新的空数组,用来存放去重后的新数组.
- 利用for循环循环遍历需要去重的数组.
- 利用indexOf()方法查询遍历出的数组在新数组中是否出现,如果出现:则继续遍历数组,如未出现:则利用push方法添加到新数组中.
- 原数组循环遍历完成后,组建一个已经去除重复的新数组.
var tmpArray = [];
for(var key in o) {
if (o[key] == 1) {
tmpArray.push(key);
}else{
if(tmpArray.indexOf(key) == -1){
tmpArray.push(key);
}
}
}
returm tmpArray;
}
console.log(clear(array));
indexof返回值:
- 如果检索的结果没有匹配值,则返回 -1.
- 如果检索的结果匹配到,则返回 1.
如果想要和我交流,就关注我的微信公众号:梓栋Coder(id:cyttlian)