var options = [ { name: 'One', assigned: true }, { name: 'Two', assigned: false }, { name: 'Three', assigned: true }, ]; var reduced = options.reduce(function(filtered, option) { if (option.assigned) { var someNewValue = { name: option.name, newProperty: 'Foo' } filtered.push(someNewValue); } return filtered; }, []); document.getElementById('output').innerHTML = JSON.stringify(reduced);