Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript Foundations Arrays Methods: Part 2

Creating sort function

The error message is that task 1 is not being passed... and I'm not doing anything with saying1

<script>
      var saying1 = ["The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"];
      var saying2 = ["The", "quick", "brown", "fox", "jumped", "over", "the", "lazy", "dog's", "back"];
      saying1.reverse();
      saying2.sort(function(saying2.length, b){
       return saying2.length - b;
      });

3 Answers

You cannot access variables in function parameters like saying2.length - only define parameter names.

If what you want is to sort by length you probably want something like:

saying2.sort(function(a, b){
       return a.length - b.length;
});

...but it won't be sorted alphabetically ;)

How come I've seen some function with strings inside like

function("string",b){...};

What would they just be normal parameter names?

That wouldn't be working javascript :D