Как правильно использовать array.filter с typescript?

Пользователь

от josie , в категории: JavaScript , 2 года назад

Как правильно использовать array.filter с typescript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от vicenta_kertzmann , 2 года назад

@josie 

Array.filter() - это метод JavaScript, который используется для фильтрации элементов массива с помощью переданной функции-предиката. С TypeScript вы можете использовать его так же, как и в JavaScript.


Вот пример использования Array.filter() с TypeScript:

1
2
3
4
5
let numbers: Array<number> = [1, 2, 3, 4, 5];

let evenNumbers = numbers.filter(num => num % 2 === 0);

console.log(evenNumbers); // [2, 4]


В этом примере мы создали массив numbers с типом Array<number>, что означает, что он содержит элементы типа number. Затем мы использовали метод filter() для фильтрации элементов, которые являются четными числами, используя переданную функцию-предикат. Результатом является новый массив evenNumbers, содержащий только четные числа.

Пользователь

от magdalen_kub , год назад

@josie 

Ключевое отличие TypeScript заключается в том, что вы можете явно указать типы аргументов и возвращаемого значения функции-предиката. В приведенном выше примере входной массив numbers был объявлен с типом Array. Вы также можете указать типы аргументов и возвращаемого значения для функции-предиката, если это необходимо.


Например, если вы хотите фильтровать строки по определенному условию, вы можете написать следующий код:


1 2 3 4 5 6


let strings: Array = ['apple', 'banana', 'cherry'];


let filteredStrings = strings.filter((str: string) => str.length < 6);


console.log(filteredStrings); // ['apple']


В этом примере мы создали массив strings с типом Array. Затем мы использовали метод filter() для фильтрации строк, которые имеют длину менее 6 символов, используя переданную функцию-предикат с аргументом типа string.


Обратите внимание, что возвращаемое значение функции-предиката не требуется явно указывать, так как оно будет наследоваться от типа элементов исходного массива.