国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 如何將一個(gè)長為365的數(shù)組對象按月份切割成12組?

瀏覽:105日期:2023-04-13 13:33:59

問題描述

如圖是一個(gè)json文件,存放了2014年全年的AQI數(shù)據(jù),現(xiàn)在想算出每月平均AQI,請問該如何處理這個(gè)數(shù)組?

javascript - 如何將一個(gè)長為365的數(shù)組對象按月份切割成12組?

問題解答

回答1:

arr.reduce((r,v)=>r[v.date.split(’/’)[1]-1].push(v)&&r,new Array(12).fill(0).map(_=>[]))

這個(gè)返回結(jié)果就可以返回一個(gè)包含12個(gè)數(shù)組的新數(shù)組,每個(gè)子數(shù)組里包含了當(dāng)月的AQI數(shù)據(jù)

才發(fā)現(xiàn)樓主要的是求每個(gè)月的平均AQI,那么可以這樣:

arr.reduce((r,v)=>r[v.date.split(’/’)[1]-1].push(v)&&r,new Array(12).fill(0).map(_=>[])) .map((i,k)=>{let r = i.reduce((r,v)=>{for(let j in r)r[j]+=(+v[j]);return r},{beijing:0,shanghai:0,guangzhou:0});for(let j in r) r[j] = parseInt(r[j]/i.length);return {...r,month:k+1+’月’}})

這個(gè)結(jié)果返回一個(gè)包含12個(gè)形如{month:’1月’,beijing:12,shanghai:24,guangzhou:36}的數(shù)組,里面的值就是每個(gè)月的平均值。

回答2:

后臺group by一下,用avg()

回答3:

感覺你不需要對數(shù)據(jù)進(jìn)行處理,那樣只會繼續(xù)耗費(fèi)內(nèi)存,你這里只需要知道每個(gè)月起始點(diǎn)和結(jié)束點(diǎn),通過起始點(diǎn)和結(jié)束點(diǎn)去取數(shù)組進(jìn)行計(jì)算就好了.因?yàn)槠鋵?shí)數(shù)據(jù)都在這里了,只是你使用數(shù)據(jù)規(guī)則不一樣罷了

回答4:

你的問題主要是怎么分成12組,提供兩個(gè)簡單的思路

將date變成日期對象,取月份來分組

利用正則取匹配date來分組

回答5:

從你給出的JSON格式分析得出:

外圍數(shù)組1-12,代表12個(gè)月

再遍歷數(shù)組,得到object,取object的data值,按照/分割得到月,根據(jù)月份把object填充到對應(yīng)月份中

拿到每個(gè)月對應(yīng)的數(shù)據(jù),再按月處理

回答6:

數(shù)據(jù)分組讓后端處理吧,前端負(fù)責(zé)使用就好了。

回答7:

var jsonData = [{ ’date’: ’2014/1/1’, ’beijing’: 80, ’shanghai’: 123, ’guangzhou’: 99 },{ ’date’: ’2014/1/2’, ’beijing’: 80, ’shanghai’: 123, ’guangzhou’: 99 },{ ’date’: ’2014/2/1’, ’beijing’: 80, ’shanghai’: 123, ’guangzhou’: 99 }];// 保存的json數(shù)據(jù)var arr = [{’date’: ’1’, ’b’: 0, ’s’: 0, ’g’: 0}];var k = 0;for(var i = 0; i < jsonData.length; i++) { var item = jsonData[i]; var dateArr = item.date.split(’/’); if (dateArr[1] == arr[k].date) {arr[k].b += item.beijing;arr[k].s += item.shanghai;arr[k].g += item.guangzhou; } else {var param = { ’date’: dateArr[1], ’b’: 0, ’s’: 0, ’g’: 0};k++;arr.push(param); }}console.log(arr);

上面代碼將每個(gè)月份的數(shù)據(jù)求和了,要請平均應(yīng)該簡單了,不過上面的代碼對json數(shù)據(jù)有個(gè)要求就是需要所有的數(shù)據(jù)已經(jīng)按照月份分類好了

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 成人资源在线 | 亚洲精品线在线观看 | 日韩精品久久久免费观看夜色 | 久久国产成人午夜aⅴ影院 久久国产成人亚洲精品影院老金 | 99热精品在线免费观看 | 国产精品yjizz视频网一二区 | 国产二区自拍 | 香蕉久久精品国产 | 一级片美国 | 亚洲字幕 | 夜色邦合成福利网站 | 欧美亚洲另类视频 | 亚洲深夜视频 | 天堂1在线观看 | 男人干女人逼 | 亚洲免费精品视频 | 亚洲日本一区二区三区高清在线 | 国产精品大片天天看片 | 精品在线观看一区 | 国产极品喷水视频jk制服 | 特黄aa级毛片免费视频播放 | 黄色福利网 | 精品91一区二区三区 | 宅男毛片 | 亚洲成人一级片 | 高清国产美女一级a毛片录 高清国产亚洲va精品 | 国产精品大全国产精品 | 末满18以下勿进色禁网站 | 女人张开双腿让男人桶爽免 | www.99在线观看 | 在线观看成年人免费视频 | 国产欧美视频在线观看 | 草草免费观看视频在线 | 五月色婷婷综合开心网4438 | 高清国产一区 | 香港一级纯黄大片 | free性chinese国语对白 | 欧美中日韩在线 | 欧美在线视频免费观看 | 97视频在线免费观看 | 国产精品一一在线观看 |