Actionscript:按日期排序ArrayCollection:YYYY-MM-DD [英] Actionscript: Sorting ArrayCollection by date: YYYY-MM-DD

查看:268
本文介绍了Actionscript:按日期排序ArrayCollection:YYYY-MM-DD的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个ArrayCollection对象。每个对象具有以下键/值:

  {date:2009-12-01,visits = 13555,bouceRate = 45} 
{date:2009-12-05,visits = 46955,bouceRate = 45}
{date:2009-12-06,visits = 13685,bouceRate = 45}
{date:2009 -12-02,访问次数= 13685,bouceRate = 45}
{date:2009-12-04,访问= 68755,bouceRate = 45}
{date:2009-12-03,访问= 35875 ,bouceRate = 45}

我需要按日期排序ArrayCollection,所以它将是从过去到现在 - 像这样:

  {date:2009-12-01,visits = 13555,bouceRate = 45} 
{date:2009-12-02,visits = 13685,bouceRate = 45}
{date:2009-12-03,visits = 35875,bouceRate = 45}
{date:2009-12-04 ,访问= 68755,bouceRate = 45}
{date:2009-12-05,访问= 46955,bouceRate = 45}
{date:2009-12-06,访问= 13685,bouceRate = 45






我尝试过以下,不排序):

  var dateSort:Sort = new Sort (); 
dateSort.fields = [new SortField(date,false,false,true)];

newAreaChartData.sort = dateSort;
newAreaChartData.refresh();

// traceout
for(var i:int = 0; i< newAreaChartData.length; i ++)
trace(Object#+ i +:+ ObjectUtil.toString(newAreaChartData.getItemAt(i)));


解决方案

这对我有用:

$ b (i = 0; i newAreaChartData [i] .formattedDate = getActualDate(newAreaChartData [i] .date);
newAreaChartData [i] .dateTime = newAreaChartData [i] .formattedDate.time;
trace(newAreaChartData [i] .dateTime);
}

var dateSort:Sort = new Sort();
dateSort.fields = [new SortField(dateTime,false,false,true)];
newAreaChartData.sort = dateSort;
newAreaChartData.refresh();

for(var i:int = 0; i< newAreaChartData.length; i ++)
trace(Object#+ i +:+ ObjectUtil.toString(newAreaChartData.getItemAt (一世)));


I have an ArrayCollection of Objects. Each Object has the following keys/values:

{date: 2009-12-01, visits=13555, bouceRate=45}
{date: 2009-12-05, visits=46955, bouceRate=45}
{date: 2009-12-06, visits=13685, bouceRate=45}
{date: 2009-12-02, visits=13685, bouceRate=45}
{date: 2009-12-04, visits=68755, bouceRate=45}
{date: 2009-12-03, visits=35875, bouceRate=45}

I need to sort this ArrayCollection by date, so it would be from past to present - like so:

{date: 2009-12-01, visits=13555, bouceRate=45}
{date: 2009-12-02, visits=13685, bouceRate=45}
{date: 2009-12-03, visits=35875, bouceRate=45}
{date: 2009-12-04, visits=68755, bouceRate=45}
{date: 2009-12-05, visits=46955, bouceRate=45}
{date: 2009-12-06, visits=13685, bouceRate=45}


I have tried the following with no prevail (not sorting):

var dateSort:Sort = new Sort();
    dateSort.fields = [new SortField("date", false, false, true)];

newAreaChartData.sort = dateSort;
newAreaChartData.refresh();

// traceout
for (var i:int = 0; i <newAreaChartData.length; i++)
    trace ("Object #" + i + ": " + ObjectUtil.toString(newAreaChartData.getItemAt(i)));

解决方案

This worked for me:

for(i = 0; i < newAreaChartData.length; ++i) {
    newAreaChartData[i].formattedDate = getActualDate(newAreaChartData[i].date);
    newAreaChartData[i].dateTime =    newAreaChartData[i].formattedDate.time;
    trace(newAreaChartData[i].dateTime);
}

    var dateSort:Sort = new Sort();
    dateSort.fields = [new SortField("dateTime", false, false, true)];
    newAreaChartData.sort = dateSort; 
    newAreaChartData.refresh();

for (var i:int = 0; i <newAreaChartData.length; i++)
    trace ("Object #"+ i + ": " + ObjectUtil.toString(newAreaChartData.getItemAt(i)));

这篇关于Actionscript:按日期排序ArrayCollection:YYYY-MM-DD的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆