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

Eivind Jonassen
Eivind Jonassen
5,994 Points

Sorting an array based on the .length property. Stuck in challenge.

The challenge goes like this: Sort the 'saying2' array, on about line 19, so that the words are listed in length order. The shortest first. Use the 'length' property on the strings in the sort function.

Code:

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 (a, b) {
    return a.length > b.length
    });

I have written the exact same thing in sublime text and tested it on a local index.html file and it gives me the correct output. Why is the challenge not accepting my answer? Im guessing there is another way of doing this that is better, but right now I'm just scratching my head.. Does anyone have a solution to my problem?

Thanks in advance! Edit: How do I post code like a block? I cant seem to do that.. Sorry! :(

1 Answer

Eivind Jonassen
Eivind Jonassen
5,994 Points

Figured out a solution! :)

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

Had to use subtraction instead. Thank you for your time anyway :)