DEV Community

Discussion on: Useful JS functions you aren't using: Array.filter

Collapse
 
xherno profile image
herno

Quick Fix to get this example working:

students
.map(s => Object.assign({}, s, {age: parseInt(s.age, 10) + 1}))
.filter(s => s.age < 12)
.forEach(s => console.log(s));

Age should be parsed as integer, in order to get the addition working, otherwise it will be treated as a string and will result i.e, for age 10, in age: 101

Collapse
 
buntine profile image
Andrew Buntine

Sure, although I'd argue that a better approach would be to represent the age as an integer in the data structure. Especially if the program is planning to perform arithmatic on it! :)