Can someone explain why the difference? #LazyWeb #Chrome #Firefoxpic.twitter.com/6ADPytXEk0
This is the legacy version of twitter.com. We will be shutting it down on June 1, 2020. Please switch to a supported browser, or disable the extension which masks your browser. You can see a list of supported browsers in our Help Center.
I work on @ChromeDevTools & @v8js at Google and on ECMAScript through TC39.
JavaScript, HTML, CSS, HTTP, performance, security, Bash, Unicode, i18n, macOS.
You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more
Add this Tweet to your website by copying the code below. Learn more
Add this video to your website by copying the code below. Learn more
By embedding Twitter content in your website or app, you are agreeing to the Twitter Developer Agreement and Developer Policy.
| Country | Code | For customers of |
|---|---|---|
| United States | 40404 | (any) |
| Canada | 21212 | (any) |
| United Kingdom | 86444 | Vodafone, Orange, 3, O2 |
| Brazil | 40404 | Nextel, TIM |
| Haiti | 40404 | Digicel, Voila |
| Ireland | 51210 | Vodafone, O2 |
| India | 53000 | Bharti Airtel, Videocon, Reliance |
| Indonesia | 89887 | AXIS, 3, Telkomsel, Indosat, XL Axiata |
| Italy | 4880804 | Wind |
| 3424486444 | Vodafone | |
| » See SMS short codes for other countries | ||
This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.
Hover over the profile pic and click the Following button to unfollow any account.
When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.
The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.
Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.
Get instant insight into what people are talking about now.
Follow more accounts to get instant updates about topics you care about.
See the latest conversations about any topic instantly.
Catch up instantly on the best stories happening as they unfold.
Can someone explain why the difference? #LazyWeb #Chrome #Firefoxpic.twitter.com/6ADPytXEk0
Interesting. Chrome and Firefox seem to pass the sorting arguments differentlypic.twitter.com/WGbuUqFkxu
Those are not “consistent comparison functions” (defined by spec, see link), so results are implementation-defined. See https://www.ecma-international.org/ecma-262/9.0/index.html#sec-array.prototype.sort …
Shouldn't something like `[1,2,3].sort(() => -1)` do the same thing in all browsers?
“If comparefn is not undefined and is not a consistent comparison function for the elements of this array (see below), the sort order is implementation-defined.”
Think of it this way: behind the scenes, the JS engine is comparing the elements in the array.
is 1 less than 2?
is 2 less than 1?
Since your comparison function always returns -1, the answer is always "yes". This doesn't make sense.
@mathias would the normative change to make Array#sort stable explicitly improve the situation in cases like these?
Not necessarily, because the comparison function is inconsistent. This is an error on the programmer’s part but not easy to catch at runtime. It is in any case not important for interoperability, as far as I know.
Brendan is (of course) correct. Stability is only guaranteed for consistent comparison functions.
Okay, thanks!
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.