Рубрики
Без рубрики

Python против JavaScript карта / синтаксис фильтра

Python и JavaScript имеют карту и фильтр, но Python имеет их как глобальную функцию, которая принимает … Помечено с Python, JavaScript, функциональным.

Python и JavaScript у обоих есть карта и Фильтр , но Python имеет их как глобальную функцию, которая принимает последовательность в качестве аргумента, в то время как JavaScript имеет их в качестве методов массива. Между двумя синтаксисами есть интересный компромисс.

Пример Python:

new = map(transform, old)

Пример JavaScript:

new = old.map(transform)

Обращение подхода Python в том, что карта и Фильтр может работать на любой ITERABLE TYPE без этого типа оказывающихся о них, тогда как в JavaScript, поскольку они не работают методы массива, они не работают на типах псевдо-массива, таких как DomtokenList и HTMLCollection.

Однако подход JavaScript немного более читабелен, но Многое более читаемый, когда вы цепите его. Рассмотрим этот питон:

new = map(transform, filter(selector, old))

Против JavaScript:

new = old.filter(selector).map(transform)

Это большое преимущество, чтобы это было методом. Конечно, Python не страдает от вышеуказанного гротескности на практике, потому что он имеет выражения генератора, которые намного лучше, чем это. Но поскольку JavaScript не имеет выражений генератора, это делает довольно хорошую причину для реализации карта и Фильтр как методы.

Оригинал: “https://dev.to/yujiri8/python-versus-javascript-map-filter-syntax-3jop”