One common cause of this problem is search returning a nested list instead of a list. A quick way to detect this is doing a call to search?q=021. If the result shows nested lists:
(notice the two [) that is the problem.
It should show one list like this:
Nothing wrong with your scripts.js from what I can see.
Try to clear your browser's cache or something.
If I paste your entire file in place of my scripts.js, your code works.
So maybe your problem is elsewhere?
// call typeahead's callback with search results (i.e., places)
So you would get something like this if you wanted to sort by postal_code:
// call typeahead's callback with search ...
You can enclose your postal_code with <span></span> tags and either alter the style inline with the style attribute or give that <span> element an id or class and customize this id/class internally via <style> tags or externally inside your .css file.
In case you choose the last route, it may be necessary to clear your browser's ...
There's a link to the full documentation in the Problem Specification.
You may also wish to pay special attention to this section of the Problem Specification.
I will note, however, that setting up and configuring the underscore.js template is not the main focus of this exercise. ...