JavaScript JavaScript Array Iteration Methods Array Manipulation Practice filter()

Evan Loiterman
Evan Loiterman
3,208 Points

why is this wrong?

let century20=years.filter(year=> <2001);

simple. but it keeps telling me it's wrong

app.js
const years = [1989, 2015, 2000, 1999, 2013, 1973, 2012];


// century20 should be: [1989, 2000, 1999, 1973]
// Write your code below

let century20=years.filter(year=> <2001);


console.log(century20)

3 Answers

Liam Clarke
MOD
Liam Clarke
Treehouse Moderator 18,894 Points

Hi Evan

You're almost there, check out the docs

The first parameter is a callback function that returns true to keep the element, otherwise false.

In your attempt, you do no test the condition against anything, <= 2000 when it should be years <= 2000.

So your shorthand would look like the below:

const years = [1989, 2015, 2000, 1999, 2013, 1973, 2012];
let century20;

// century20 should be: [1989, 2000, 1999, 1973]
// Write your code below

century20 = years.filter( year => year <= 2000 );

and in case you find it more readable, the above is the same as below:

const years = [1989, 2015, 2000, 1999, 2013, 1973, 2012];
let century20;

// century20 should be: [1989, 2000, 1999, 1973]
// Write your code below

century20 = years.filter(year => {
  return year <= 2000;
});

hope this helps

Kevin Gates
Kevin Gates
12,871 Points

Should be >= or <=. You currently have year => <2001 which is not valid.

Evan Loiterman
Evan Loiterman
3,208 Points

let century20=years.filter(year=> year<=2001); will be accepted?