@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
, содержащий только четные числа.
@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.
Обратите внимание, что возвращаемое значение функции-предиката не требуется явно указывать, так как оно будет наследоваться от типа элементов исходного массива.