hdma,
что не так?
<script>
let results = [{
value: 'b||||g|c'
}, {
value: 'm|f|c||a'
}];
let postProcess = function(results) {
let x = results.reduce(function(map, entry) {
let newItems = entry.value.split('|');
return map.concat(newItems);
}, [])
.filter((e, i, arr) => arr.indexOf(e) === i && e.length)
.sort(function(a, b) {
var nameA = a;
var nameB = b;
if (nameA < nameB) {
return -1; // сначала nameA
}
if (nameA > nameB) {
return 1; // сначала nameB
}
return 0; // они одинаковые
})
.map((e, i, arr) => ({
text: e,
value: ['e', 'contains', e]
}));
return x;
};
let temp = postProcess(results);
document.write(`<pre>${JSON.stringify(temp, "", 1)}</pre>`)
</script>