js操作数组分类

var aa = [
    {
        id: 1,
        imei: ‘‘,
        store_name: ‘合肥店‘
    },
    {
        id: 3,
        imei: ‘3‘,
        store_name: ‘合肥店‘
    },
    {
        id: 2,
        imei: ‘1‘,
        store_name: ‘芜湖店‘
    },
    {
        id: 4,
        imei: ‘34343‘,
        store_name: ‘上海店‘
    }
];

  

分类 一
var list = aa,
    flag = 0,
    data = [];
for(var i = 0; i< list.length; i++) {
    var az = ‘‘;
    for (var j = 0; j < data.length; j++) {
        if(data[j][0].store_name == list[i].store_name) {
            flag = 1;
            az = j;
            break;
        }
    }
    if(flag == 1){
        data[az].push(list[i]);
        flag = 0;
    } else if (flag == 0) {
        wdy = new Array();
        wdy.push(list[i]);
        data.push(wdy);
    }
}
console.log(data)

  

分类二
for(var i = 0; i < list.length; i++) {
    if(!data[list[i].store_name]) {
        var arr = [];
        arr.push(list[i]);
        data[list[i].store_name] = arr;
    }else {
        data[list[i].store_name].push(list[i])
    }
}
console.log(data);

  结果如下:

分类三
var moth = [],
    flag = 0,
    list = aa;
var wdy = {
    title: ‘‘,
    sur_name: ‘‘
}
for (var i = 0; i < list.length; i++) {
    var az = ‘‘;
    for (var j = 0; j < moth.length; j++) {
        if (moth[j].title == list[i][‘store_name‘]) {
            flag = 1;
            az = j;
            break;
        }
    }
    if (flag == 1) {
        var ab = moth[az];
        ab.sur_name.push(list[i]);
        flag = 0;

    } else if (flag == 0) {
        wdy = {};
        wdy.title = list[i][‘store_name‘];
        wdy.sur_name = new Array();
        wdy.sur_name.push(list[i]);
        moth.push(wdy);
    }
}

console.log(moth);

  

原文地址:https://www.cnblogs.com/chenzxl/p/11053317.html

时间: 2024-10-30 05:05:38

js操作数组分类的相关文章

JS 操作数组的方法

1.检测数组 (判断一个值是不是数组) var color = ["red", "green", "blue"]; (1) if (color instanceof Array) {} (2) if (Array.isArray(value)) {} 2.转换方法 var color = ["red", "green", "blue"]; (1) toString()/toLocalSt

js操作数组

JavaScript的Array可以包含任意数据类型,并通过索引来访问每个元素. 要取得Array的长度,直接访问length属性: var arr = [1, 2, 3.14, 'Hello', null, true]; arr.length; // 6 请注意,直接给Array的length赋一个新的值会导致Array大小的变化: var arr = [1, 2, 3]; arr.length; // 3 arr.length = 6; arr; // arr变为[1, 2, 3, unde

JS操作数组-2

1. 找出数组 arr 中重复出现过的元素 function duplicates(arr) { var result = []; var count = []; for (var i=0;i<arr.length;i++) { if(count[arr[i]]) {//count用来记录数组中元素出现的次数,key是元素,value是次数. count[arr[i]]++; } else { count[arr[i]]=1; } } for (var i=0;i<count.length;i

js 操作数组

原始数组alert("原始数组:" + arr);// 1,2,3,4,5 删除并且返回第一个元素alert("执行arr.shift() 返回 :" + arr.shift());//1alert("数组:" + arr);//2,3,4,5 删除并且返回最后一个元素alert("执行arr.pop() 返回:" + arr.pop());//5alert("数组:" + arr);//2,3,4 在数组

js操作数组的小Demo

var telStr=$("#TELNUM").val(); var telsPre=telStr.split(","); var tels=telsPre.reverse(); var size = tels.length; for(var i=0; i<size; i++){ if(""!=tels[i]) { var index=0; if(i==0){ d["CUSTOMER_TEL"] =tels[i]; in

js,jQuery数组常用操作小结

一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); 结果 a:[2,3,4,5] b:1 (2) unshift:将参数添加到原数组开头,并返回数组的长度 var a = [1,2,3,4,5]; var b = a.unshift(-2,-1); 结果 a:[-2,-1,1,2,3,4,5] b:7 注:在IE6.0下测试返回值总为undefi

js中数组操作

var selectedCodeArray = []; var num = $.inArray(值, selectedCodeArray)  //值在数组中的位置 selectedCodeArray.push(值码); selectedCodeArray.splice(num, 1);//从数组中删除 js中数组操作,布布扣,bubuko.com

js的数组操作

用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多,自以为js高手的自己居然无从下手,一下狠心,我学!呵呵.学了之后才知道,js数组的功能强大很,远比VB,C#强多了,大家慢慢看吧 1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度 var arr

js常用操作--数组

<script> /** * js操作函数 * * * push(): * pop(): * shift(): * split(): */ //数组添加元素 //数组删除元素 //数组拷贝 //split():由字符串生成数组 /** * 对于数组的整体性操作需要注意: * 当把一个数组a赋给另外一个数组b时,只是为被赋值的数组a增加了一个新的引用.当修改赋值数组b的值时,被赋值的数组a也会感知到这个变化 */ var nums1 = []; var nums2 = []; for(var i