I have a JSON array with thirty objects (in the last 30 days of today), each object has these properties:
{ "on": "2013-05-20", "notCachedRequestsDevelopment": "115,482" "cachedRequestsDevelopment": "4,732,914", "notCachedBandwidthDevelopment": "15525231867", "Kasdbandvidth Development": " 2571078929 "," rejected disclaimer development ":" 44068 "," reject Krenvindvidth development ":" 23169212 "," non-CSS Kveshik Request development ":" 678 9 "," non-CSS Not Kachard Request development ":" 14 40 "," Notified Securities Production ":" 9 "", "Cash" CDNCachedRequests ": 6062986," CDNNotCachedRequests ":" 272901.0 "," CDNRejectRequests ":" 84764.0 "," CDNailBandwidth ": 56006050473.574," billingBandwidth ": 22525362831.36 , "billingHits": 6,489,103} I need to take this JSON and create a new array. for example:
I totalBandwidth need a new array that takes each JSON object and lowers the following properties: notCachedBandwidthDevelopment + cachedBandwidthDevelopment + rejected Krenbandvidth development No Kasdbandvi Dthutpadn + Kasdbandvidthprodkshn + rejected Krenbandvidthprodkshn I have an array that developmentBandwidth and gets the sum of each object: cachedBandwidthDevelopment + NotCachedBandwidthDevelopment one ?? | And so on.
I can do this with the loop for each new array, but I suspect that there is a clever way to do this? "itemprop =" text "> option 1: Array.prototype.map ()
You can create new JavaScript Try the array.prototype.map () array function. In your case, you might want something like: on developmentBandwidth = origArray.map (function (obj) {return parseInt (obj.cachedBandwidthDevelopment) + parseInt (obj.notCachedBandwidthDevelopment);} ); developmentBandwidth will be an array of numbers. Note that this is only implemented in ECMAScript 5, and only available in modern browsers. MDN:
They provide a compatibility function that allows you to use the function on older browsers.
Option 2: jQuery.map ()
It seems that the jQuery library provides a similar function. Similar examples:
may be obtained by var Vicasbandvidth = $ Kmap (inducing function (Obije, index) {return Parasent (obj.cached BandwidthDevelopment) + parseInt (obj.notCachedBandwidthDevelopment) above is; });
Compare between two options
No comments:
Post a Comment