Wbudowane funkcje w JavaScript

Wbudowane funkcje w JavaScript

Ten artykuł wyjaśnia wbudowane funkcje w JavaScript.

YouTube Video

Wbudowane funkcje w JavaScript

JavaScript oferuje różnorodne wbudowane funkcje, które są potężnymi narzędziami do efektywnego tworzenia programów. Tutaj szczegółowo wyjaśnimy typowe wbudowane funkcje w JavaScript. Poznając role, zastosowania i uwagi dotyczące każdej funkcji, będziesz w stanie bardziej efektywnie korzystać z JavaScript.

Czym są wbudowane funkcje?

Wbudowane funkcje to funkcje dostępne standardowo w JavaScript. Te funkcje są zaprojektowane do zwięzłego wykonywania określonych zadań. Programiści nie muszą ich implementować samodzielnie, co poprawia czytelność i łatwość utrzymania kodu.

Reprezentatywne wbudowane funkcje

parseInt()

1// Convert string to integer
2console.log(parseInt("42"));      // Output: 42
3console.log(parseInt("42px"));    // Output: 42
4console.log(parseInt("0xF", 16)); // Output: 15
5console.log(parseInt("0xF"));     // Output: 15
6console.log(parseInt("px42"));    // Output: NaN
  • parseInt() to funkcja, która analizuje ciąg znaków i konwertuje go na liczbę całkowitą. Jeśli początek ciągu znaków zawiera liczbę, ta część jest zwracana jako liczba całkowita. Można również określić opcjonalną podstawę (radix).

  • Jeśli początek ciągu znaków nie zawiera liczby, zwraca NaN (Not-a-Number). Jeśli podstawa nie jest określona, domyślnie używana jest postać dziesiętna, ale jeśli ciąg zaczyna się od "0x", jest interpretowany jako szesnastkowy.

parseFloat()

1// Convert string to float
2console.log(parseFloat("3.14"));      // Output: 3.14
3console.log(parseFloat("3.14abc"));   // Output: 3.14
4console.log(parseFloat("42"));        // Output: 42
  • parseFloat() analizuje ciąg znaków i konwertuje go na liczbę zmiennoprzecinkową. Używana jest przy pracy z liczbami zawierającymi kropkę dziesiętną.

  • Podobnie jak parseInt(), jeśli początek ciągu znaków nie jest liczbą, zwraca NaN. Charakteryzuje się poprawnym analizowaniem nie tylko części całkowitej, ale także dziesiętnej.

isNaN()

1console.log(isNaN(NaN));         // Output: true
2console.log(isNaN(42));          // Output: false
3console.log(isNaN("hello"));     // Output: true
  • isNaN() określa, czy dana wartość to NaN. NaN (Not-a-Number) reprezentuje nieprawidłową wartość jako liczbę.

  • isNaN() działa również dla typów danych innych niż liczby, i na przykład zwraca true, jeśli ciąg znaków nie może zostać przekonwertowany na liczbę.

Number()

1console.log(Number("42"));        // Output: 42
2console.log(Number("3.14"));      // Output: 3.14
3console.log(Number("0xff"));      // Output: 255
4console.log(Number("abc"));       // Output: NaN
  • Number() to funkcja, która konwertuje ciągi znaków lub inne typy danych na liczbę. Zwraca NaN, jeśli podany jest nie-numeryczny ciąg znaków.

  • W przeciwieństwie do parseInt() lub parseFloat(), Number() uznaje to za nieprawidłową konwersję i zwraca NaN, jeśli ciąg zawiera znaki niebędące liczbami.

String()

1console.log(String(42));           // Output: "42"
2console.log(String(3.14));         // Output: "3.14"
3console.log(String(true));         // Output: "true"
4console.log(String(null));         // Output: "null"
5console.log(String(undefined));    // Output: "undefined"
  • String() to funkcja, która konwertuje liczby i inne typy danych na ciągi znaków. String(42) zwraca ciąg znaków "42".
  • Jeśli wartość do konwersji to null lub undefined, funkcja zwraca odpowiednio ciągi znaków "null" lub "undefined".
  • Jest przydatna do obsługi różnych typów danych, takich jak liczby, wartości logiczne czy obiekty, poprzez ich konwersję na ciągi znaków.

Array

1const arr = Array(3);
2console.log(arr); // Output: [ <3 empty items> ]
3
4const arr2 = Array(1, 2, 3);
5console.log(arr2); // Output: [1, 2, 3]
  • Array to konstruktor używany do tworzenia nowych tablic.
  • Jeśli podany jest jeden argument, jest on traktowany jako długość tablicy, a tworzona jest pusta tablica.
  • Jeśli podanych jest kilka argumentów, tworzona jest tablica z tymi wartościami jako elementami.

Array.isArray()

1console.log(Array.isArray([1, 2, 3])); // Output: true
2console.log(Array.isArray("not an array")); // Output: false
  • Array.isArray() to metoda, która sprawdza, czy argument jest tablicą.
  • Zwraca true, jeśli argument jest tablicą, a w przeciwnym razie false.

isFinite()

1console.log(isFinite(42));         // Output: true
2console.log(isFinite(Infinity));   // Output: false
3console.log(isFinite(NaN));        // Output: false
  • isFinite() określa, czy podana wartość jest skończona. Zwraca true dla liczb skończonych, a false w przeciwnym wypadku (np. dla wartości nieskończonych lub NaN).

  • W JavaScripcie Infinity i -Infinity reprezentują nieskończoność i są typu liczbowego, ale isFinite() uznaje nieskończoność za nieprawidłową wartość.

eval()

1let expression = "2 + 2";
2console.log(eval(expression));    // Output: 4
3
4console.log(eval("var x = 10; x * 2"));  // Output: 20
  • eval() to funkcja, która ocenia i wykonuje kod JavaScript podany jako ciąg znaków. Możesz dynamicznie wykonywać kod JavaScript.

  • eval() jest bardzo potężną funkcją, ale stwarza ryzyko bezpieczeństwa, dlatego należy jej unikać w rzeczywistym rozwoju. Wykonywanie kodu dostarczonego z zewnątrz za pomocą eval() może prowadzić do niezamierzonego działania i luk w zabezpieczeniach.

encodeURI() / decodeURI()

1let url = "https://example.com/?name=John Doe&age=25";
2let encodedUrl = encodeURI(url);
3console.log(encodedUrl);
4// Output: https://example.com/?name=John%20Doe&age=25
5
6let decodedUrl = decodeURI(encodedUrl);
7console.log(decodedUrl);
8// Output: https://example.com/?name=John Doe&age=25
  • encodeURI() to funkcja służąca do kodowania (konwersji) znaków, które nie mogą być używane w adresie URL. Z kolei decodeURI() dekoduje zakodowany adres URL do jego pierwotnej formy.

  • Kodowanie jest szczególnie ważne przy pracy z znakami specjalnymi. Na przykład, znaki takie jak spacje czy & muszą być zakodowane, aby mogły być poprawnie uwzględnione w adresie URL, dlatego trzeba je odpowiednio przetworzyć za pomocą encodeURI().

setTimeout() / setInterval()

 1// Execute a function after 2 seconds
 2setTimeout(() => {
 3    console.log("This runs after 2 seconds");
 4}, 2000);
 5
 6// Execute a function every 1 second
 7let intervalId = setInterval(() => {
 8    console.log("This runs every 1 second");
 9}, 1000);
10
11// Stop the interval after 5 seconds
12setTimeout(() => {
13    clearInterval(intervalId);
14}, 5000);
  • setTimeout() to funkcja timerowa używana do jednorazowego wykonania funkcji po określonym czasie. setInterval() wielokrotnie wykonuje funkcję w określonych odstępach czasu.

  • setTimeout() i setInterval() wykonują się asynchronicznie, wywołując funkcję po upływie określonego czasu. Możliwe jest również anulowanie wykonania za pomocą clearTimeout() lub clearInterval().

Podsumowanie

Wykorzystywanie wbudowanych funkcji JavaScript pozwala pisać prostsze i bardziej wydajne programy. Przedstawione tutaj funkcje są podstawowe i przydatne w różnych sytuacjach. Koniecznie napisz faktyczny kod i potwierdź jego działanie, aby pogłębić swoje zrozumienie.

Poznaj bardziej zaawansowane przetwarzanie i użycie funkcji, aby jeszcze bardziej rozwinąć swoje umiejętności 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