Các hàm tích hợp trong JavaScript

Các hàm tích hợp trong JavaScript

Bài viết này giải thích các hàm tích hợp trong JavaScript.

YouTube Video

Các hàm tích hợp trong JavaScript

JavaScript cung cấp nhiều hàm tích hợp, là công cụ mạnh mẽ để tạo chương trình một cách hiệu quả. Ở đây, chúng tôi sẽ giải thích chi tiết về các hàm tích hợp điển hình trong JavaScript. Bằng cách học về vai trò, cách sử dụng và những điều cần lưu ý của từng hàm, bạn sẽ có thể sử dụng JavaScript hiệu quả hơn.

Hàm tích hợp là gì?

Hàm tích hợp là các hàm được cung cấp theo tiêu chuẩn trong JavaScript. Các hàm này được thiết kế để thực hiện các nhiệm vụ cụ thể một cách ngắn gọn. Các lập trình viên không phải tự triển khai chúng, giúp cải thiện tính dễ đọc và bảo trì của mã nguồn.

Các hàm tích hợp tiêu biểu

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() là một hàm phân tích một chuỗi và chuyển đổi nó thành một số nguyên. Nếu phần đầu của chuỗi chứa một số, phần đó sẽ được trả về dưới dạng một số nguyên. Bạn cũng có thể chỉ định tùy chọn một cơ số (radix).

  • Nếu phần đầu của chuỗi không chứa một số, nó sẽ trả về NaN (Không phải là một số). Ngoài ra, nếu không chỉ định cơ số, mặc định sẽ là hệ thập phân, nhưng nếu chuỗi bắt đầu bằng "0x", nó sẽ được hiểu là hệ thập lục phân.

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() phân tích một chuỗi và chuyển đổi nó thành một số thực. Nó được sử dụng khi làm việc với các số bao gồm dấu thập phân.

  • Giống như parseInt(), nếu phần đầu của chuỗi không phải là số, nó sẽ trả về NaN. Nó có đặc điểm là phân tích chính xác không chỉ phần số nguyên mà còn cả phần số thập phân.

isNaN()

1console.log(isNaN(NaN));         // Output: true
2console.log(isNaN(42));          // Output: false
3console.log(isNaN("hello"));     // Output: true
  • isNaN() xác định liệu một giá trị được cung cấp có phải là NaN hay không. NaN (Không phải là một số) đại diện cho một giá trị không hợp lệ dưới dạng số.

  • isNaN() cũng hợp lệ cho các kiểu dữ liệu khác ngoài số, chẳng hạn như trả về true nếu một chuỗi không thể chuyển đổi thành số.

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() là một hàm chuyển đổi chuỗi hoặc các kiểu dữ liệu khác thành một số. Nó trả về NaN nếu một chuỗi không phải số được cung cấp.

  • Không giống như parseInt() hoặc parseFloat(), Number() coi đó là chuyển đổi không hợp lệ và trả về NaN nếu chuỗi chứa các ký tự không phải số.

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() là một hàm dùng để chuyển đổi các số và các kiểu dữ liệu khác thành chuỗi. String(42) trả về chuỗi "42".
  • Nếu giá trị cần chuyển đổi là null hoặc undefined, nó sẽ trả về chuỗi tương ứng là "null" hoặc "undefined".
  • Nó hữu ích để xử lý nhiều kiểu dữ liệu khác nhau, ví dụ như số, boolean hoặc đối tượng, bằng cách chuyển đổi chúng thành chuỗi.

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 là một hàm khởi tạo dùng để tạo ra các mảng mới.
  • Nếu có một tham số, nó sẽ được coi là độ dài của mảng, và một mảng rỗng sẽ được tạo ra.
  • Nếu có nhiều tham số, một mảng chứa các giá trị đó làm phần tử sẽ được tạo ra.

Array.isArray()

1console.log(Array.isArray([1, 2, 3])); // Output: true
2console.log(Array.isArray("not an array")); // Output: false
  • Array.isArray() là một phương thức dùng để kiểm tra xem tham số truyền vào có phải là một mảng hay không.
  • Nó trả về true nếu tham số là một mảng, và false nếu không phải.

isFinite()

1console.log(isFinite(42));         // Output: true
2console.log(isFinite(Infinity));   // Output: false
3console.log(isFinite(NaN));        // Output: false
  • isFinite() xác định xem giá trị được cung cấp có phải là hữu hạn hay không. Trả về true cho các số hữu hạn, và false trong các trường hợp khác (như vô cực hoặc NaN).

  • Trong JavaScript, Infinity-Infinity biểu thị vô cực và thuộc kiểu số, nhưng isFinite() coi vô cực là giá trị không hợp lệ.

eval()

1let expression = "2 + 2";
2console.log(eval(expression));    // Output: 4
3
4console.log(eval("var x = 10; x * 2"));  // Output: 20
  • eval() là một hàm đánh giá và thực thi mã JavaScript được cung cấp dưới dạng chuỗi. Bạn có thể thực thi mã JavaScript một cách linh động.

  • eval() rất mạnh mẽ nhưng nó gây rủi ro bảo mật, vì vậy nên tránh sử dụng trong phát triển thực tế. Thực thi mã được cung cấp từ bên ngoài bằng eval() có thể dẫn đến hành vi không mong muốn và lỗ hổng bảo mật.

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() là một hàm được sử dụng để mã hóa (chuyển đổi) các ký tự không thể được sử dụng trong URL. Mặt khác, decodeURI() giải mã URL đã mã hóa về dạng ban đầu của nó.

  • Mã hóa đặc biệt quan trọng khi xử lý các ký tự đặc biệt. Ví dụ, các ký tự như khoảng trắng hoặc & cần được mã hóa để được đưa vào URL đúng cách, vì vậy phải xử lý chúng một cách phù hợp bằng 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() là một hàm hẹn giờ dùng để thực thi một hàm một lần sau một khoảng thời gian nhất định. setInterval() thực thi một hàm lặp lại ở các khoảng thời gian được chỉ định.

  • setTimeout()setInterval() thực thi bất đồng bộ, gọi hàm sau khi thời gian được chỉ định trôi qua. Cũng có thể hủy các lần thực thi bằng cách sử dụng clearTimeout() hoặc clearInterval().

Tóm tắt

Sử dụng các hàm tích hợp sẵn của JavaScript giúp bạn viết các chương trình đơn giản hơn và hiệu quả hơn. Các chức năng được giới thiệu ở đây là cơ bản và hữu ích trong nhiều tình huống. Hãy chắc chắn viết mã thực tế và xác nhận hành vi của nó để hiểu sâu hơn.

Học cách xử lý phức tạp hơn và cách sử dụng các hàm nâng cao để cải thiện kỹ năng JavaScript của bạn hơn nữa.

Bạn có thể làm theo bài viết trên bằng cách sử dụng Visual Studio Code trên kênh YouTube của chúng tôi. Vui lòng ghé thăm kênh YouTube.

YouTube Video