当我在任何社交网络上看到有关类似主题的帖子时,下面几乎总是有很多此类评论:
为什么需要知道是否有内置的排序方法?
为什么要重新发明轮子?
有必要通过面试,客观上不再需要知道
在“任何JavaScript引擎”中,它们都不是愚蠢的,并且已经做好了一切
在我加入Rostelecom IT团队之一担任前端开发人员之前,我本人也一直以相同的方式思考。我们在一起遇到了一个非常有趣的案例:有必要创建一个小部件,该小部件可以内置到我们所有宏观区域分支机构的信息系统中,并简化运营商选择最佳费率的工作。
开门见山
您认为执行此代码后会发生什么?同时,没有必要知道。”
似乎没有什么奇怪的,但有细微差别。
案例次数
, , , 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»,
,
,
, ,