Встроенные функции в TypeScript

Встроенные функции в TypeScript

Эта статья объясняет встроенные функции в TypeScript.

YouTube Video

Встроенные функции в TypeScript

Встроенные функции в TypeScript представляют собой удобные функции для выполнения повседневных операций лаконично. Это стандартные функции JavaScript с добавленной проверкой типов, которые особенно полезны при разработке на TypeScript. Здесь мы подробно объясним некоторые важные встроенные функции, их использование и спецификацию типов.

Что такое встроенные функции?

Встроенные функции TypeScript основаны на стандартных функциях JavaScript. Применение системы типов TypeScript улучшает проверку типов и автозаполнение. Основные функции включают следующее:.

  • parseInt()
  • parseFloat()
  • isNaN()
  • isFinite()
  • Number()
  • String()
  • Array()
  • Array.isArray()
  • eval()
  • encodeURI()
  • decodeURI()
  • setTimeout()
  • setInterval()

Эти функции широко используются в проектах TypeScript для лаконичного преобразования и оценки данных.

parseInt()

parseInt() — это функция, используемая для преобразования строки в целое число. Вы можете указать систему счисления (например, бинарную, десятичную) в качестве второго аргумента. В TypeScript вы можете указать тип следующим образом:.

 1function stringToInt(value: string, radix: number = 10): number {
 2    const result: number = parseInt(value, radix);
 3    if (isNaN(result)) {
 4        throw new Error('Invalid number format');
 5    }
 6    return result;
 7}
 8
 9console.log(stringToInt("42")); // 42
10console.log(stringToInt("101010", 2)); // 42 (converted from binary)
  • Указывайте, что ввод представляет собой строку с помощью value: string
  • Возвращаемое значение явно указывается как тип number.

parseFloat()

parseFloat() — это функция, используемая для преобразования строки в число с плавающей запятой.

 1function stringToFloat(value: string): number {
 2    const result: number = parseFloat(value);
 3    if (isNaN(result)) {
 4        throw new Error('Invalid number format');
 5    }
 6    return result;
 7}
 8
 9console.log(stringToFloat("3.14")); // 3.14
10console.log(stringToFloat("2.71828")); // 2.71828
  • parseFloat() может корректно разбирать числа, включая десятичные точки.
  • Указав тип, вы можете получить предупреждение при проверке типов, если ввод не является числом.

isNaN()

isNaN() — это функция, определяющая, является ли данное значение NaN (не числом). Пример использования в TypeScript выглядит следующим образом:.

1function checkNaN(value: unknown): boolean {
2    return isNaN(Number(value));
3}
4
5console.log(checkNaN("hello")); // true
6console.log(checkNaN(123)); // false
  • Тип unknown — это обобщенный тип, который может принимать любой тип.
  • Преобразуйте значение в число с помощью функции Number() и проверьте, является ли результат NaN.

isFinite()

isFinite() определяет, является ли значение конечным.

1function isValueFinite(value: unknown): boolean {
2    return isFinite(Number(value));
3}
4
5console.log(isValueFinite("100")); // true
6console.log(isValueFinite(Infinity)); // false
  • Эта функция также использует Number() для преобразования значения в число перед проверкой.

Number()

Функция Number() преобразует строки или логические значения в числа.

1function convertToNumber(value: string | boolean): number {
2    return Number(value);
3}
4
5console.log(convertToNumber("42")); // 42
6console.log(convertToNumber(true)); // 1
  • В этом примере используется объединенный тип string | boolean, чтобы указать, что аргумент может быть либо строкой, либо логическим значением.

String()

Функция String() преобразует числа или логические значения в строки.

1function convertToString(value: number | boolean): string {
2    return String(value);
3}
4
5console.log(convertToString(123)); // "123"
6console.log(convertToString(false)); // "false"
  • В этом примере создается функция, которая принимает объединенный тип number | boolean и преобразует результат в строку.

Array()

Функция Array() используется для создания нового массива. Кроме того, она предоставляет множество полезных методов для создания подмассивов из существующих массивов или извлечения конкретных элементов.

 1function createArray(): Array<number> {
 2    return Array(1, 2, 3, 4, 5); // 新しい配列を作成
 3}
 4
 5function getSubArray(array: Array<number>): Array<number> {
 6    return array.slice(1, 4); // サブ配列を作成
 7}
 8
 9const numbers = createArray();
10console.log(numbers); // [1, 2, 3, 4, 5]
11
12const subArray = getSubArray(numbers);
13console.log(subArray); // [2, 3, 4]
  • Этот пример показывает, как создать новый массив с использованием функции Array() и создать подмассив с помощью метода slice().

Array.isArray()

Array.isArray() определяет, является ли данное значение массивом.

1function checkArray(value: unknown): boolean {
2    return Array.isArray(value);
3}
4
5console.log(checkArray([1, 2, 3])); // true
6console.log(checkArray("Not an array")); // false
  • Используя тип unknown, мы принимаем любое значение и одновременно проверяем, является ли оно массивом.

eval()

Функция eval() вычисляет строку как выражение и возвращает результат. Однако её использование не рекомендуется из-за соображений безопасности и производительности.

1function evaluateExpression(expression: string): any {
2    return eval(expression);
3}
4
5console.log(evaluateExpression("2 + 3")); // 5
6console.log(evaluateExpression("'Hello ' + 'World!'")); // "Hello World!"
  • В этом примере выражение, представленное в виде строки, вычисляется с помощью eval, и результат выводится.

encodeURI()

Функция encodeURI() кодирует полный URL и экранирует определенные символы.

1const uri = "https://example.com/page?name=John Doe&age=30";
2const encodedURI = encodeURI(uri);
3
4console.log(encodedURI); // "https://example.com/page?name=John%20Doe&age=30"
  • В этом примере пробелы кодируются как %20 для создания безопасного URL.

decodeURI()

Функция decodeURI() декодирует закодированный URL обратно в исходный формат.

1const encodedURI = "https://example.com/page?name=John%20Doe&age=30";
2const decodedURI = decodeURI(encodedURI);
3
4console.log(decodedURI); // "https://example.com/page?name=John Doe&age=30"
  • В этом примере декодируется строка закодированного URL обратно в исходный URL.

setTimeout()

Функция setTimeout() выполняет указанную функцию после заданной задержки (в миллисекундах).

1setTimeout(() => {
2    console.log("Executed after 2 seconds");
3}, 2000);
  • Этот пример отображает сообщение через 2 секунды.

setInterval()

Функция setInterval() повторно выполняет указанную функцию через заданный интервал (в миллисекундах).

1let count = 0;
2const intervalId = setInterval(() => {
3    count++;
4    console.log(`Interval executed ${count} time(s)`);
5    if (count === 3) {
6        clearInterval(intervalId); // Stops the interval after 3 executions
7    }
8}, 1000);
  • Этот пример отображает сообщение с интервалом в одну секунду и прекращает работу после выполнения трех раз.

Заключение

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

Используя TypeScript, разработчики могут воспользоваться преимуществами статической типизации, сохраняя при этом гибкость JavaScript.

Вы можете следовать этой статье, используя Visual Studio Code на нашем YouTube-канале. Пожалуйста, также посмотрите наш YouTube-канал.

YouTube Video