<!DOCTYPE html>
<html>
<head>
<script data-require="lodash.js@*" data-semver="3.1.0" src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/3.1.0/lodash.min.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>
<body>
<h1>Hello Plunker!</h1>
</body>
</html>
var data = [
{ rel: 'link1', href: 'url1'},
{ rel: 'link2', href: 'url2'},
{ rel: 'link3', href: 'url3'},
{ rel: 'link4', href: 'url4'},
];
var toHashMap = function (data, name, value) {
return _.zipObject(_.pluck(data, name),
_.pluck(data, value));
}
var toMap = function (data, name, value) {
return _.reduce(data, function(acc, item) {
acc[item[name]] = item[value];
return acc;
}, {});
}
console.log('toHashMap', toHashMap(data, 'rel', 'href'));
console.log('toMap', toMap(data, 'rel', 'href'));
console.log('lodash.indexBy', _.indexBy(data, 'rel'));
/* Styles go here */
http://codereview.stackexchange.com/questions/57614/convert-object-array-to-hash-map-using-lodash