Ran into this little problem the other day when using someone else’s specific syntax. Returning a complex object using a notation that puts objects brackets onto new lines was throwing an error. I sat there staring at it for maybe like 20 minutes wondering what the hell I’d been drinking recently and why I couldn’t trace the error.
Turns out it was a very simple syntax pit fall I hadn’t come across before, because I’m a Person A in the example below with regards to formatting my scripts.
function() { } function() { }
You can argue which is better all you want but likely you will run into both forms as a developer, both have their merits, and neither saves compile time.
So if you are a person B or just forced to use that format when defining objects, there is a catch you should know about.
If you do this
function() { return { x: null, y: null } }
You will get an error, specifically it relates to the return. You can not put your return object on a new line. Instead you need to return an object like this.
function() { return { x: null, y: null } }
So it’s a good thing to keep in mind when using return, if you are a fan of brackets getting new lines 🙂
Enjoy!