JSFiddle - React, Tailwind, and code Playground
JavaScript
function min(collection, callback) {
if (collection.length == 0) {
return null;
}
var minIndex = 0;
var minValue = callback(collection[0]);
for (var i = 1; i < collection.length; ++i) {
if (minValue > callback(collection[i])) {
minValue = callback(collection[i]);
minIndex = i;
}
}
return collection[minIndex];
}
var items1 = [ "John/20", "Mary/18" ];
var items2 = [ {name:"John", age:20}, {name:"Mary",age: 18}];
var minItem = min(items1, function(item) {
return item.split('/')[1]; // get the "age" part
});
alert(minItem.split('/')[0] + " is " + minItem.split('/')[1]);
minItem = min(items2, function(item) {
return item.age;
});
alert(minItem.name + " is " + minItem.age);