d3js.entries pure Javascript Alternative
A way to get an array of key/value pairs from an object w/o having to include the entire d3js library
by Matthew Marcus
JavaScript
if(typeof Object.keys !== 'function'){
Object.prototype.keys = function(obj){
var keys = [];
for(var key in obj){
keys.push(key);
}
return keys;
}
}
Object.prototype.entries = function(){
var
keys = Object.keys(this),
entries = [];
for (var i = 0; i < keys.length; i++){
entries.push({
key: keys[i],
value: this[keys[i]]
});
}
return entries;
};
var simpleObj = {
a: 'A',
b: ['a', 1, 'B', {'one':1}],
c: {'one':'Hello World'},
d: 'D'
};
console.log(simpleObj.entries());