Here’s another reason Chrome is better than Safari: because it adapts new JavaScript specifications faster.1 As of Chrome 60, which was released July 25 of this year, you can use the spread operator in object literals. If you pop open your browser console, this will work in Chrome but not Safari.

const user = { firstName: 'Martyn' }
const clonedUser = { ... user }

In Safari, you get this error:

SyntaxError: Unexpected token ‘…’. Expected a property name.

No, hey, sweetie, no.


  1. If you’re the sort of person who thinks this is a mute point because JavaScript shouldn’t be able to run in a browser in the first place, I have nothing to say to you other than that I hope you’re enjoying the weather in Philly. ↩︎