Why does this array return a length of 3 when it's clearly 4 elements?
'matt'.split('').sort();
It looks like you've run into the classic "the console doesn't log at runtime, it logs when you inspect the data structure" error. Check out Weird behavior with objects & console.log
Basically, the value of the array is calculated when you click the spindown arrow. The small blue (i) next to the array (you can mouse over it) lets you know that the value displayed is the value at the time of clicking the structure open, not the value at the time you console.logged it.
Google "value below was evaluated just now" for more information.
The following shows a length of 4.
console.log('matt'.split('').sort().length);