- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
public static function map( a:Array, pred:Function ):Array
{
return a.map(
function( it:*, idx:*, a:* ):*
{
return pred(it)
});
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−113
public static function map( a:Array, pred:Function ):Array
{
return a.map(
function( it:*, idx:*, a:* ):*
{
return pred(it)
});
}
Вот такая полезная функция.
Толерантность к меньшинствам?
+ оно для настоящих ботанов - с четырьмя глазами.
Проблема "родных" методов массива в том, что они не компонуются никак, а без компоновки их использование видится бессмысленным. Кроме того, найти в природе уже существующие функции с типом элемент->индекс->массив->элемент представляется маловероятным, а с типом элемент->элемент - вполне себе.
map(element:*,...rest):*
И не городить лишних статических методов.
Например, чтобы получить [3, 7]. curry возвращает оригинальную функцию с захваченным первым аргументом.
Т.е. это нам позволило бы использовать map повторно (с оригинальной Array.map так не получится).
Заставили его работать без отдыха, вот он и написал такое ;)