JS数组的方法

JS数组方法在工作中的应用(手生啦,复习复习)

案例:1,arrHead为后端发来的表头信息;arrContent为后端发的表内容信息
2,要求对后端发来的id,数据日期,机构编号进行隐藏

var arrHead = ["id", "银行", "数据日期", "账号", "账户名称", "借贷方标志", "当月交易金额(元)", "法定节假日交易金额(元)", "法定节假日交易额占比", "机构编号"]
        var arrContent = [["1", "上海银行", "201901", "10206929", "天津AAA投资管理有限公司", "借", 10000, 10000, 1, "BS001"], ["10", "上海银行", "201901", "14748703", "天津AAA投资管理有限公司", "借", 28253.33, 28253.33, 1, "BS001"], ["11", "上海银行", "201901", "15245119.5", "太仓市AAA诺办公用品商店", "借", 29753.33, 29753.33, 1, "BS001"], ["12", "上海银行", "201901", "15741536", "上海AAAA投资管理有限公司", "借", 31253.33, 31253.33, 1, "BS001"], ["13", "上海银行", "201901", "16237952.5", "天津AAA投资管理有限公司", "借", 32753.33, 32753.33, 1, "BS001"], ["14", "上海银行", "201901", "16734369", "太仓市AAA诺办公用品商店", "借", 34253.33, 34253.33, 1, "BS001"], ["15", "上海银行", "201901", "17230785.5", "上海AAAA投资管理有限公司", "借", 35753.33, 35753.33, 1, "BS001"], ["16", "上海银行", "201901", "17727202", "天津AAA投资管理有限公司", "借", 37253.33, 37253.33, 1, "BS001"], ["17", "上海银行", "201901", "18223618.5", "太仓市AAA诺办公用品商店", "借", 38753.33, 38753.33, 1, "BS001"], ["18", "上海银行", "201901", "18720035", "上海AAAA投资管理有限公司", "借", 40253.33, 40253.33, 1, "BS001"]]

解决方案:

//表头数据处理 利用数组的过滤方法获取去除id,数据日期,机构编号的新数组
        var newArrHead = arrHead.filter(item=>{
            return item !== "id" & item !== "数据日期" & item !== "机构编号"
        })
        console.log(newArrHead);
        //表内容数据处理 
        //表内容为二维数组,过滤掉每一组表头目标索引所对应的数据,map会将所有回调函数的返回值组成新数组返回
        var newArrContent = arrContent.map(item=>{
            return item.filter((childItem,index)=>{
                return arrHead[index] !== "id" & arrHead[index] !== "数据日期" & arrHead[index] !== "机构编号"
            })
        })
        console.log(newArrContent,'---------------');
        //需求二 若为数组类型,则保留小数点后两位
        newArrContent.forEach(item=>{
            item.forEach((childItem,index)=>{
                if(typeof(childItem)==='number'){
                    item[index]=childItem.toFixed(2)
                }
            })
        })
        console.log(newArrContent);

JS中数组的方法

会改变原数组

array.push(item1, item2, ..., itemX)
array.pop()
array.unshift(item1,item2, ..., itemX)
array.shift()
array.reverse()
array.sort() array.sort(function (a, b) { return a - b }) 数字升序排序
array.splice(index,howmany,item1,.....,itemX)
array.fill(value, start, end)

不会改变原数组的方法

array.toString()
array.join(separator)
array.slice(start, end)
array.concat(array2,array3,...,arrayX)
array.indexOf(item,start)
array.lastIndexOf(item,start)

ES5新增

foreach() map() filter() some() every() reduce()

数组方法超详细链接!!!

你可能感兴趣的:(JS数组的方法)