In the current version of Safari on a Mac, the String.prototype.trim function removes "\u200b" characters from the string. That character is not recognized as whitespace by the ECMAScript 5 spec (or the ES6 drafts), and should not be removed. Example code: alert("\u200b".trim().length); // should alert 1, actually alerts 0. Apologies if this has been fixed in a nightly build.
Adding this character was intentional, see discussion in bug 26590. Seems like maybe we should remove it now to match the new standard.
Looks like bug 26590 was written to match a draft specification, but no ratified specification ever included u200b, Unicode does not include u200b in the 'Separator, Space' category, and Firefox does not include it either.
Created attachment 230402 [details] Patch
Comment on attachment 230402 [details] Patch r=me
Committed r167951: <http://trac.webkit.org/changeset/167951>