This function sorts an array and returns the unique items. I'm trying to get it down to a readable 5 lines of code. So far I've renamed the variable cursor variable and inlined the assignments. I'll appreciate fresh eyes.
Before
function uniques(array) {
var result = [], val, ridx;
outer:
for (var i = 0, length = array.length; i < length; i++) {
val = array[i];
ridx = result.length;
while (ridx--) {
if (val === result[ridx]) continue outer;
}
result.push(val);
}
return result;
}
After
function uniques(array) {
var result = [], val, cursor;
outer:
for (var i = 0, length = array.length; i < length; i++) {
val = array[i], cursor = result.length;
while (cursor--) {
if (val === result[cursor]) continue outer;
}
result.push(val);
}
return result;
}