Привет всем! Я сделал пару аналогов функции
concat из библиотеки lodash с помощью reduce, concat
//////////////// concat(array, [values]) ////////////////
// Creates a new array concatenating array with any additional arrays and/or values.
function concat() {
return new Array(arguments.length).fill().reduce((acc,_,i) => acc = acc.concat(arguments[i]), [])
}
// console.log(concat(1, 2, [3, 4], [[5]]));
// => [1, 2, 3, 4, [5]]
// console.log(concat([1]));
// => [1]
// 2 example
function concat2() {
return [].concat(...arguments)
}
console.log(concat2(1, 2, [3, 4], [[5]]));
// => [1, 2, 3, 4, [5]]
console.log(concat2([1]));
// => [1]
Вопрос такой, как сделать ещё такую функцию с помощью других методов, например, map, forEach и прочее?
Приступить в jsfiddle