Wbudowane funkcje w TypeScript

Wbudowane funkcje w TypeScript

Ten artykuł wyjaśnia wbudowane funkcje w TypeScript.

YouTube Video

Wbudowane funkcje w TypeScript

Wbudowane funkcje w TypeScript to wygodne funkcje umożliwiające zwięzłe wykonywanie codziennych operacji. Są to standardowe funkcje JavaScript z dodatkowym mechanizmem bezpieczeństwa typów, co czyni je szczególnie przydatnymi podczas programowania w TypeScript. Tutaj szczegółowo wyjaśnimy niektóre ważne wbudowane funkcje, ich zastosowanie oraz specyfikację typów.

Czym są wbudowane funkcje?

Wbudowane funkcje TypeScript opierają się na standardowych funkcjach JavaScript. Zastosowanie systemu typów TypeScript zwiększa dokładność sprawdzania typów i uzupełniania kodu. Główne funkcje obejmują następujące:.

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

Te funkcje są powszechnie używane w projektach TypeScript do zwięzłego przekształcania i oceny danych.

parseInt()

parseInt() to funkcja służąca do konwersji ciągu znaków na liczbę całkowitą. Możesz określić podstawę systemu liczbowego (np. binarny, dziesiętny) jako drugi argument. W TypeScript można określić typ w następujący sposób:.

 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)
  • Określ, że dane wejściowe to ciąg znaków za pomocą value: string
  • Wartość zwracana jest jawnie określona jako typ number.

parseFloat()

parseFloat() to funkcja służąca do konwersji ciągu znaków na liczbę zmiennoprzecinkową.

 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() może poprawnie przetwarzać liczby zawierające przecinki dziesiętne.
  • Określając typ, możesz otrzymać ostrzeżenie podczas sprawdzania typów, jeśli dane wejściowe nie są liczbą.

isNaN()

isNaN() to funkcja sprawdzająca, czy podana wartość to NaN (Not-a-Number - nie jest liczbą). Przykład użycia w TypeScript wygląda następująco:.

1function checkNaN(value: unknown): boolean {
2    return isNaN(Number(value));
3}
4
5console.log(checkNaN("hello")); // true
6console.log(checkNaN(123)); // false
  • Typ unknown to ogólny typ, który może przyjmować dowolny typ.
  • Konwertuj dane na liczbę za pomocą funkcji Number(), a następnie sprawdź, czy wynik to NaN.

isFinite()

isFinite() sprawdza, czy wartość jest skończona.

1function isValueFinite(value: unknown): boolean {
2    return isFinite(Number(value));
3}
4
5console.log(isValueFinite("100")); // true
6console.log(isValueFinite(Infinity)); // false
  • Ta funkcja również używa Number() do konwersji wartości na liczbę przed przeprowadzeniem sprawdzenia.

Number()

Funkcja Number() konwertuje ciągi znaków lub wartości logiczne na liczby.

1function convertToNumber(value: string | boolean): number {
2    return Number(value);
3}
4
5console.log(convertToNumber("42")); // 42
6console.log(convertToNumber(true)); // 1
  • W tym przykładzie typ unii string | boolean jest używany do określenia, że argument jest albo ciągiem tekstowym, albo wartością logiczną.

String()

Funkcja String() konwertuje liczby lub wartości logiczne na ciągi tekstowe.

1function convertToString(value: number | boolean): string {
2    return String(value);
3}
4
5console.log(convertToString(123)); // "123"
6console.log(convertToString(false)); // "false"
  • W tym przykładzie tworzona jest funkcja, która akceptuje unię typu number | boolean i konwertuje wynik na ciąg tekstowy.

Array()

Funkcja Array() jest używana do tworzenia nowej tablicy. Dodatkowo oferuje wiele przydatnych metod do tworzenia podtablic z istniejących tablic lub wyodrębniania konkretnych elementów.

 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]
  • Ten przykład pokazuje, jak utworzyć nową tablicę za pomocą funkcji Array() i podtablicę za pomocą metody slice().

Array.isArray()

Array.isArray() określa, czy podana wartość jest tablicą.

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
  • Używając typu unknown, akceptujemy dowolny typ, jednocześnie sprawdzając, czy jest to tablica.

eval()

Funkcja eval() ocenia ciąg tekstowy jako wyrażenie i zwraca wynik. Jednak nie zaleca się jej użycia ze względu na zagrożenia związane z bezpieczeństwem i wydajnością.

1function evaluateExpression(expression: string): any {
2    return eval(expression);
3}
4
5console.log(evaluateExpression("2 + 3")); // 5
6console.log(evaluateExpression("'Hello ' + 'World!'")); // "Hello World!"
  • W tym przykładzie wyrażenie podane jako ciąg tekstowy jest oceniane za pomocą eval, a wynik jest wyświetlany.

encodeURI()

Funkcja encodeURI() koduje cały URL i ucieka pewne znaki.

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"
  • Ten przykład koduje spacje jako %20, aby wygenerować bezpieczny URL.

decodeURI()

Funkcja decodeURI() dekoduje zakodowany URL do jego pierwotnego formatu.

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"
  • Ten przykład dekoduje zakodowany ciąg URL do oryginalnego URL.

setTimeout()

Funkcja setTimeout() wykonuje określoną funkcję po upływie podanego czasu opóźnienia (w milisekundach).

1setTimeout(() => {
2    console.log("Executed after 2 seconds");
3}, 2000);
  • Ten przykład wyświetla wiadomość po 2 sekundach.

setInterval()

Funkcja setInterval() wielokrotnie wykonuje określoną funkcję w podanym interwale czasowym (w milisekundach).

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);
  • Ten przykład wyświetla wiadomość w odstępach jednosekundowych i zatrzymuje się po trzykrotnym wykonaniu.

Wnioski

Wbudowane funkcje TypeScript umożliwiają bezpieczniejsze i bardziej efektywne kodowanie, dodając bezpieczeństwo typów do standardowych funkcji JavaScript. Te funkcje upraszczają codzienne zadania programistyczne i poprawiają czytelność oraz łatwość utrzymania kodu. Każda funkcja jest używana zgodnie ze swoim przeznaczeniem, a dzięki określeniu typów można wykrywać błędy z wyprzedzeniem, odgrywając ważną rolę w zwiększaniu niezawodności procesu tworzenia oprogramowania.

Korzystając z TypeScript, można skorzystać z możliwości statycznego typowania, zachowując jednocześnie elastyczność JavaScript.

Możesz śledzić ten artykuł, korzystając z Visual Studio Code na naszym kanale YouTube. Proszę również sprawdzić nasz kanał YouTube.

YouTube Video