Skip to content

Commit cbf8fcf

Browse files
committed
docs(stdlib): edit array/sort
1 parent 727c26c commit cbf8fcf

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

docs/stdlib/array.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ a // [1, 2]
402402
// [10111, 1101, 111]
403403
```
404404

405-
上面代码的最后两个例子,需要特殊注意。`sort`方法不是按照大小排序,而是按照字典顺序。也就是说,数值会被先转成字符串,再按照字典顺序进行比较,所以`101`排在`11`的前面。
405+
上面代码的最后两个例子,需要特殊注意。`sort()`方法不是按照大小排序,而是按照字典顺序。也就是说,数值会被先转成字符串,再按照字典顺序进行比较,所以`101`排在`11`的前面。
406406

407407
如果想让`sort`方法按照自定义方式排序,可以传入一个函数作为参数。
408408

@@ -430,6 +430,18 @@ a // [1, 2]
430430
// ]
431431
```
432432

433+
注意,自定义的排序函数应该返回数值,否则不同的浏览器可能有不同的实现,不能保证结果都一致。
434+
435+
```javascript
436+
// bad
437+
[1, 4, 2, 6, 0, 6, 2, 6].sort((a, b) => a > b)
438+
439+
// good
440+
[1, 4, 2, 6, 0, 6, 2, 6].sort((a, b) => a - b)
441+
```
442+
443+
上面代码中,前一种排序算法返回的是布尔值,这是不推荐使用的。后一种是数值,才是更好的写法。
444+
433445
### map()
434446

435447
`map`方法将数组的所有成员依次传入参数函数,然后把每一次的执行结果组成一个新数组返回。

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"homepage": "https://github.com/wangdoc/javascript-tutorial",
3636
"dependencies": {
3737
"gh-pages": "latest",
38-
"husky": "^3.0.5",
38+
"husky": "^3.0.7",
3939
"loppo": "latest",
4040
"loppo-theme-wangdoc": "latest"
4141
}

0 commit comments

Comments
 (0)