I am trying to build 2 arrays from JSON arrays.
{
"2015-03-24": {
"bind": 0,
"info": "",
"notes": "",
"price": "150",
"promo": "",
"status": "available"
},
"2015-03-25": {
"bind": 0,
"info": "",
"notes": "",
"price": "150",
"promo": "",
"status": "available"
},
"2015-03-26": {
"bind": 0,
"info": "",
"notes": "",
"price": "150",
"promo": "",
"status": "available"
},
"2015-03-27": {
"bind": 0,
"info": "",
"notes": "",
"price": "100",
"promo": "",
"status": "available"
},
"2015-03-28": {
"bind": 0,
"info": "",
"notes": "",
"price": "100",
"promo": "",
"status": "available"
},
"2015-03-29": {
"bind": 0,
"info": "",
"notes": "",
"price": "100",
"promo": "",
"status": "available"
},
"2015-04-10": {
"bind": 0,
"info": "",
"notes": "",
"price": "",
"promo": "",
"status": "booked"
},
"2015-04-11": {
"bind": 0,
"info": "",
"notes": "",
"price": "",
"promo": "",
"status": "booked"
},
"2015-05-01": {
"bind": 0,
"info": "",
"notes": "",
"price": "",
"promo": "",
"status": "unavailable"
},
"2015-05-02": {
"bind": 0,
"info": "",
"notes": "",
"price": "",
"promo": "",
"status": "unavailable"
},
"2015-05-03": {
"bind": 0,
"info": "",
"notes": "",
"price": "",
"promo": "",
"status": "unavailable"
},
}
This is the jSon array, so I want to build 2 arrays.
1 array holding only keys (in this case the date) of those element where status=='booked' nOR status=='unavailable'
and build it in jQuery array like this
var array = ['2015-03-19', '2015-03-20', '2015-03-21', '2015-03-22', '2015-03-23', '2015-03-24', '2015-03-25', '2015-03-26', '2015-04-07', '2015-04-08', '2015-04-09', '2015-04-10'];
Another is building another array with the dates of those days where status=='available' AND price > '100$'
var array2 = [ '2015-03-25', '2015-03-26', '2015-04-07', '2015-04-08'];
How can I achieve this on with jQuery?
If j
is your json:
var a1 = [];
var a2 = [];
$.each( j, function( key, ob ) {
if(ob.price > 100 && ob.status == 'available'){
a1.push(key);
}
if(ob.status == 'booked' || ob.status == 'unavailable'){
a2.push(key);
}
});
console.log(a1);
console.log(a2);
Yields:
["2015-03-24", "2015-03-25", "2015-03-26"]
["2015-04-10", "2015-04-11", "2015-05-01", "2015-05-02", "2015-05-03"]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With