Merge pull request #558 from isLishude/patch-1

增加ES5中reduce方法对数组空位的处理
This commit is contained in:
Ruan YiFeng
2017-12-07 10:21:56 +08:00
committed by GitHub
+4 -1
View File
@@ -728,7 +728,7 @@ Array(3) // [, , ,]
ES5 对空位的处理,已经很不一致了,大多数情况下会忽略空位。
- `forEach()`, `filter()`, `every()``some()`都会跳过空位。
- `forEach()`, `filter()`, `reduce()`, `every()``some()`都会跳过空位。
- `map()`会跳过空位,但会保留这个值
- `join()``toString()`会将空位视为`undefined`,而`undefined``null`会被处理成空字符串。
@@ -742,6 +742,9 @@ ES5 对空位的处理,已经很不一致了,大多数情况下会忽略空
// every方法
[,'a'].every(x => x==='a') // true
// reduce方法
[1,,2].reduce((x,y) => return x+y) // 3
// some方法
[,'a'].some(x => x !== 'a') // false