UNPKG

578 BJavaScriptView Raw
1var isArray = require('./isArray')
2var arrayEach = require('./arrayEach')
3
4function flattenDeep (array, deep) {
5 var result = []
6 arrayEach(array, function (vals) {
7 result = result.concat(isArray(vals) ? (deep ? flattenDeep(vals, deep) : vals) : [vals])
8 })
9 return result
10}
11
12/**
13 * 将一个多维数组铺平
14 * @param {Array} array 数组
15 * @param {Boolean} deep 是否深层
16 * @return {Array}
17 */
18function flatten (array, deep) {
19 if (isArray(array)) {
20 return flattenDeep(array, deep)
21 }
22 return []
23}
24
25module.exports = flatten