gpt4 book ai didi

javascript forEach 对数组/json 数据但按最新日期排序?

转载 作者:行者123 更新时间:2023-11-28 15:12:26 25 4
gpt4 key购买 nike

是否可以修改以下内容,以便在 foreach 上它会反转,以便数据的最新日期排在第一位,而不是从最旧到最新?

var json = {
"TrackingRecord": {
"Authorised": "Authorised(5.77.48.131)",
"DeliveryAddress": {
"CompanyName": "JAMES DERICK",
"Address1": "6",
"Address2": "LIBER HOUSE",
"Address3": "OLYMPIAN",
"Town": "YORK",
"Postcode": "YO10 3UF",
"ContactName": "JAMES DERICK",
"ContactTelephone": "7507346318"
},
"CollectionAddress": {
"CompanyName": "AMBIENT LOUNGE LTD",
"Address1": "UNIT 3 LONG HEDGE LANE INDUSTR",
"Address2": "BOTTESFORD",
"Address3": {

},
"Town": "NOTTINGHAM",
"Postcode": "NG13 0BF",
"ContactName": "SARAH KIRBY",
"ContactTelephone": "07879 442266074"
},
"ConsignmentInformation": {
"Pieces": "1",
"Pallets": "0",
"Weight": "10",
"Service": "Priority 1",
"DeliveryDate": "2016-02-29T00:00:00",
"ItemsDelivered": "1",
"ConsignmentRef": "2838",
"SpecialInstructions": "JAMES DERICK 7507346318 {JAMES\u003Cbr\u003E14075@GMAIL.COM}\u003Cbr\u003E",
"AdditionalReferencesInformation": {
"AdditionalReferences": {
"Reference": "2838"
}
}
},
"MovementInformation": {
"Movement": [{
"MovementDate": "2016-02-25T00:00:00",
"MovementTime": "0001-01-01T10:00:04",
"Description": "Created By EZEEWEB",
"DeliveryDepot": "Leeds",
"Round": "019",
"DeliveryDate": "2016-02-26T00:00:00",
"PackagesReceived": "0",
"PackagesDelivered": "0"
}, {
"MovementDate": "2016-02-26T00:00:00",
"MovementTime": "0001-01-01T07:11:53",
"Description": "Out to deliver",
"DeliveryDepot": "Leeds",
"Round": "019",
"DeliveryDate": "2016-02-26T00:00:00",
"PackagesReceived": "1",
"PackagesDelivered": "0"
}, {
"MovementDate": "2016-02-26T00:00:00",
"MovementTime": "0001-01-01T11:00:53",
"Description": "Failed - Other reason",
"DeliveryDepot": "Leeds",
"Round": "019",
"DeliveryDate": "2016-02-29T00:00:00",
"PackagesReceived": "1",
"PackagesDelivered": "0"
}, {
"MovementDate": "2016-02-27T00:00:00",
"MovementTime": "0001-01-01T05:59:32",
"Description": "Out to deliver",
"DeliveryDepot": "Leeds",
"Round": "019",
"DeliveryDate": "2016-02-29T00:00:00",
"PackagesReceived": "1",
"PackagesDelivered": "0"
}, {
"MovementDate": "2016-02-29T00:00:00",
"MovementTime": "0001-01-01T10:55:43",
"Description": "Delivered",
"DeliveryDepot": "Leeds",
"Round": "019",
"DeliveryDate": "2016-02-29T00:00:00",
"PackagesReceived": "1",
"PackagesDelivered": "1"
}]
},
"TimedInformation": {
"TimedDelivery": {
"Signature": "DERICK",
"SignatureDate": "2016-02-29T00:00:00",
"SignatureTime": "0001-01-01T10:55:00"
}
},
"ScanInformation": {
"Scan": [{
"PieceID": "148426702251072001",
"Description": "Auto Inbound Scan ()",
"Depot": "Newark",
"ScanDate": "2016-02-25T00:00:00",
"ScanTime": "0001-01-01T17:12:01",
"ScannedBy": "NWK CONVYR"
}, {
"PieceID": "148426702251072001",
"Description": "Auto Inbound Scan ()",
"Depot": "Leeds",
"ScanDate": "2016-02-26T00:00:00",
"ScanTime": "0001-01-01T02:22:08",
"ScannedBy": "LDS CONVYR"
}, {
"PieceID": "148426702251072001",
"Description": "Load C & D (019)",
"Depot": "Leeds",
"ScanDate": "2016-02-26T00:00:00",
"ScanTime": "0001-01-01T03:37:45",
"ScannedBy": "CJONES"
}, {
"PieceID": "148426702251072001",
"Description": "Load C & D (019)",
"Depot": "Leeds",
"ScanDate": "2016-02-26T00:00:00",
"ScanTime": "0001-01-01T23:43:22",
"ScannedBy": "CJONES"
}]
},
"ImageInformation": {
"PODImage": {
"URL": "http:\/\/www.tpeweb.co.uk\/ezpod\/tpenas\/valid\/20160229\/014842672838___________00000_01.tif"
}
}
}
}



json.TrackingRecord.MovementInformation.Movement.forEach(function(item) {
//console.log(item);
item.MovementDate = moment(item.MovementDate).format('ddd, Do of MMM YYYY');
item.MovementTime = moment(item.MovementTime).format('hh:mm a');
$("#movement tbody").append("<tr><td>" + item.MovementDate + "</td><td>" + item.MovementTime + "</td><td>" + item.Description + "</td></tr>");
})
<script src="https://cdn.jsdelivr.net/momentjs/2.11.2/moment.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table id="movement">
<thead>
<tr>
<th>Date</th>
<th>Time</th>
<th>Status</th>
</tr>
</thead>
<tbody>
</tbody>
</table>

最佳答案

不适用于普通的forEach。可能性:

  • 假设按升序排列。从 length - 10 循环索引。非破坏性。
  • 假设按升序排列。应用reverse,然后应用forEach。具有破坏性。
  • 假设它是未排序的。对数组进行排序,然后应用 forEach。具有破坏性。
  • 假设它是未排序的。创建索引数组,按数组中相应的值对索引进行排序,对索引应用 forEach 并访问数组成员。非破坏性。
  • 假设它是未排序的。使用 slice 克隆数组,然后应用 sortforEach。非破坏性。

关于javascript forEach 对数组/json 数据但按最新日期排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35834641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com