1排序
var arr=[12,34,56,74,77,34,99,42,12,7785];
//升序
function sheng(newArr){
newArr.sort(function(a,b){return a-b});
return newArr;
}
alert(sheng(arr));
//降序
function jiang(newArr){
newArr.sort(function(a,b){return b-a});
return newArr;
}
alert(jiang(arr));
2去重
<script>
var arr=[12,34,56,74,77,34,99,42,12,7785];
var arr2=[];
function arr1(){
for(var i=0;i<arr.length;i++){
if(arr2.indexOf(arr[i])==-1){
arr2[arr2.length]=arr[i];
}
}
console.log(arr2);
}
arr1();
for(var j in arr){
console.log(arr[j]);
}
</script>
3,过滤filter去重
var arr = [12, 34, 56, 74, 77, 34, 99, 42, 12, 7785];
var arr2 = arr.filter((item, i, array) => {
return array.indexOf(item)==i
})
4,查找某一个值在数组当中的索引下标
var arr = [12, 34, 56, 74, 77, 34, 99, 42, 12, 7785];
console.log(arr.map(item => item).indexOf(7785))//9
5,查找数组中是否有某一个值
var arr = [12, 34, 56, 74, 77, 34, 99, 42, 12, 7785];
var arr2 = arr.filter((item, i, array) => {
return array.indexOf(item)==i
})
console.log(arr2.indexOf(11) == -1)//0代表有找到 -1代表没有找到
6,JavaScript 数组去重并统计重复元素出现的次数
var arr = [1, 2, 3, 1, 2, 4];
function arrayCnt(arr) {
var newArr = [];
for(var i = 0; i < arr.length; i++) {
if(newArr.indexOf(arr[i]) == -1) {
newArr.push(arr[i])
}
}
var newarr2 = new Array(newArr.length);
for(var t = 0; t < newarr2.length; t++) {
newarr2[t] = 0;
}
for(var p = 0; p < newArr.length; p++) {
for(var j = 0; j < arr.length; j++) {
if(newArr[p] == arr[j]) {
newarr2[p]++;
}
}
}
for(var m = 0; m < newArr.length; m++) {
console.log(newArr[m] + "重复的次数为:" + newarr2[m]);
}
}
arrayCnt(arr);
var arr = [1, 2, 3, 1, 2, 4];
function arrayCnt(arr) {
var newArr = [];
//使用set进行数组去重
newArr = [...new Set(arr)];
var newarr2 = new Array(newArr.length);
for(var t = 0; t < newarr2.length; t++) {
newarr2[t] = 0;
}
for(var p = 0; p < newArr.length; p++) {
for(var j = 0; j < arr.length; j++) {
if(newArr[p] == arr[j]) {
newarr2[p]++;
}
}
}
for(var m = 0; m < newArr.length; m++) {
console.log(newArr[m] + "重复的次数为:" + newarr2[m]);
}
}
arrayCnt(arr);
//方法:使用obj记录重复的元素,以及出现的次数
function getCount(arr) {
var obj = {},
k, arr1 = [];
for(var i = 0, len = arr.length; i < len; i++) {
k = arr[i];
if(obj[k])
obj[k]++;
else
obj[k] = 1;
}
console.log(obj)
//保存结果{el-'元素',count-出现次数}
for(var o in obj) {
arr1.push({
el: o,
count: obj[o]
});
}
console.log(arr1);
}
getCount([4, 2, 2, 3, 1])