Quand je vois un article sur un sujet similaire sur n'importe quel réseau social, il y a presque toujours beaucoup de commentaires de ce type en dessous:
Pourquoi avez-vous besoin de savoir cela s'il existe des méthodes de tri intégrées?
Pourquoi réinventer la roue?
Il est nécessaire de passer un entretien, objectivement il n'est plus nécessaire de le savoir
Dans "n'importe quel moteur javascript", ils ne sont pas stupides et ont déjà tout fait correctement
Et moi-même, je pensais de la même manière jusqu'à ce que je rejoigne l'une des équipes informatiques de Rostelecom en tant que développeur frontend. Ensemble, nous sommes tombés sur un cas très intéressant: il fallait créer un widget qui pourrait être embarqué dans les systèmes d'information de toutes nos agences macro-régionales et simplifier le travail des opérateurs dans le choix du tarif optimal.
Droit au but
Que pensez-vous qu'il se passera après l'exécution de ce code? En attendant, il n'y a pas lieu de s'en inquiéter. »
Il semble que rien d'Ă©trange, mais il y a des nuances.
Nombre de cas fois
, , , unit-. - . . -, . , Node.js 10, , . , , . , — . , , , , .
. Node , Node, 11, . . Node 12, .
: Google Chrome 80 , 69 — . , .
,
Release notes Google Chrome
, Google Chrome 69 — , 6- V8
Release notes V8
6 7 V8
Getting things sorted in V8, , 7- V8 TimSort, QuickSort. , , - .
Node.js 10.22 ( V8 v6.8) QuickSort.​
​ , , 0.
Node.js 14.5 ( V8 v7.0) TimSort.​
​ .
? , JavaScript. Node.js , .
, . BlockSort (wikisort). , , , , .
:
lodash.sortby
WikiSort javascript (WikiSort)
QuickSort V8 (node.js 10.22.0)
TimSort V8 (node.js 14.5.0)
10 , 100 .
​
​ : , V8, WikiSort TimSort, . lodash .
sort-test-js, — Tihon-Ustinov/sort-test-js
?
| JavaScript | |||
Node.js | 11.0.0 | 2018-10-23 | V8 7.0.276.28 | + |
Node.js | 10.22.0 | 2020-07-21 | V8 6.8.275.32 | - |
Google Chrome | 70.0.3538 | 2018-10-16 | V8 7.0.276 | + |
Google Chrome | 69.0.3497 | 2018-09-04 | V8 6.9.427 | - |
« JavaScript»,
,
,
, ,