Chào mừng bạn đến với hướng dẫn về các phương thức chuỗi trong JavaScript! Trên đây, chúng ta sẽ đi sâu vào các phương thức quan trọng giúp bạn làm việc hiệu quả với văn bản trong ngôn ngữ lập trình JavaScript.
Độ Dài của Chuỗi
Để biết độ dài của một chuỗi, chúng ta sử dụng thuộc tính length. Dưới đây là ví dụ minh họa:
let text = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = text.length;
Trích Xuất Phần của Chuỗi
Có ba phương thức chính để trích xuất một phần của chuỗi:
a. slice(start, end)
Phương thức slice() trích xuất một phần của chuỗi và trả về phần được trích xuất trong một chuỗi mới. Nó nhận hai tham số: vị trí bắt đầu và vị trí kết thúc (không bao gồm).
let text = "Apple, Banana, Kiwi";
let part = text.slice(7, 13);
Nếu không có tham số thứ hai, phương thức sẽ trích xuất phần còn lại của chuỗi:
let text = "Apple, Banana, Kiwi";
let part = text.slice(7);
b. substring(start, end)
Phương thức substring() tương tự như slice(), nhưng nếu giá trị bắt đầu hoặc kết thúc là âm hoặc lớn hơn giá trị chuỗi, nó sẽ được xử lý như là 0 hoặc chiều dài của chuỗi.
let str = "Apple, Banana, Kiwi";
let part = str.substring(7, 13);
c. substr(start, length)
Phương thức substr() cũng trích xuất một phần của chuỗi, nhưng thay vì kết thúc, nó nhận vào độ dài của phần được trích xuất.
let str = "Apple, Banana, Kiwi";
let part = str.substr(7, 6);
Nếu không có tham số thứ hai, phương thức này sẽ trích xuất phần còn lại của chuỗi:
let str = "Apple, Banana, Kiwi";
let part = str.substr(7);
Thay Thế Nội Dung Chuỗi
a. replace(oldValue, newValue)
Phương thức replace() thay thế một giá trị cụ thể bằng giá trị mới trong chuỗi. Lưu ý rằng chỉ có giá trị đầu tiên được thay thế.
let text = "Please visit Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
b. replaceAll(oldValue, newValue)
Trong phiên bản JavaScript mới (ES2021), chúng ta có thêm phương thức replaceAll() để thay thế tất cả các kết quả khớp.
text = text.replaceAll("Cats", "Dogs");
text = text.replaceAll("cats", "dogs");
Lưu ý rằng replaceAll() cũng có thể sử dụng biểu thức chính quy để thay thế.
text = text.replaceAll(/Cats/g, "Dogs");
text = text.replaceAll(/cats/g, "dogs");
Chuyển Đổi Chữ Hoa và Chữ Thường
a. toUpperCase()
Phương thức toUpperCase() chuyển đổi chuỗi thành chữ in hoa.
let text1 = "Hello World!";
let text2 = text1.toUpperCase();
b. toLowerCase()
Phương thức toLowerCase() chuyển đổi chuỗi thành chữ thường.
let text1 = "Hello World!";
let text2 = text1.toLowerCase();
Nối Chuỗi
concat()
Phương thức concat() nối hai hoặc nhiều chuỗi lại với nhau.
let text1 = "Hello";
let text2 = "World";
let text3 = text1.concat(" ", text2);
Nó cũng có thể được sử dụng thay thế cho toán tử +.
text = "Hello" + " " + "World!";
text = "Hello".concat(" ", "World!");
Xử Lý Khoảng Trắng
a. trim()
Phương thức trim() loại bỏ khoảng trắng từ cả hai đầu của chuỗi.
let text1 = " Hello World! ";
let text2 = text1.trim();
b. trimStart() và trimEnd()
Trong ES2019, chúng ta có thêm hai phương thức mới để loại bỏ khoảng trắng chỉ từ đầu (trimStart()) hoặc chỉ từ cuối (trimEnd()) của chuỗi.
let text1 = " Hello World! ";
let text2 = text1.trimStart();
let text3 = text1.trimEnd();
Thêm Khoảng Trắng
a. padStart(length, padString)
Phương thức padStart() thêm ký tự (hoặc chuỗi) vào đầu chuỗi cho đến khi đạt được độ dài mong muốn.
let text = "5";
let padded = text.padStart(4, "0");
b. padEnd(length, padString)
Phương thức padEnd() thêm ký tự (hoặc chuỗi) vào cuối chuỗi cho đến khi đạt được độ dài mong muốn.
let text = "5";
let padded = text.padEnd(4, "0");
Lưu ý rằng padStart() và padEnd() đã được thêm vào trong ES2017.
Trích Xuất Ký Tự trong Chuỗi
Có ba phương thức để trích xuất ký tự từ chuỗi:
a. charAt(position)
Phương thức charAt() trả về ký tự tại một vị trí chỉ định trong chuỗi.
let text = "HELLO WORLD";
let char = text.charAt(0);
b. charCodeAt(position)
Phương thức charCodeAt() trả về mã Unicode của ký tự tại một vị trí chỉ định trong chuỗi.
let text = "HELLO WORLD";
let charCode = text.charCodeAt(0);
c. Property Access [ ]
ES5 cho phép chúng ta sử dụng cú pháp dạng mảng [ ] để truy cập các ký tự trong chuỗi.
let text = "HELLO WORLD";
let char = text[0];
Tuy nhiên, cách này có thể không dự đoán được và chỉ đọc. Nếu không tìm thấy ký tự, [ ] sẽ trả về undefined.
Đối với các tác vụ đọc và ghi, chúng ta nên sử dụng charAt() hoặc charCodeAt().
Chuyển Đổi Chuỗi thành Mảng
split(separator)
Phương thức split() chuyển đổi một chuỗi thành một mảng các chuỗi con dựa trên một bộ phân cách.
text.split(","); // Chia chuỗi bằng dấu phẩy
text.split(" "); // Chia chuỗi bằng khoảng trắng
text.split("|"); // Chia chuỗi bằng dấu đứng chân
Nếu bộ phân cách được bỏ qua, mảng kết quả sẽ chứa toàn bộ chuỗi trong phần tử đầu tiên.
text.split(""); // Mảng của các ký tự đơn
Chú ý rằng split() trả về một mảng mới và không thay đổi chuỗi gốc.
Tổng Kết
Trong bài viết này, chúng ta đã tìm hiểu về các phương thức chuỗi quan trọng trong JavaScript, từ độ dài, cắt, thay thế, đến chuyển đổi chữ hoa/chữ thường và nhiều hơn nữa. Việc hiểu rõ về những khái niệm này sẽ giúp bạn làm việc mạnh mẽ với văn bản trong lập trình. Đừng quên khám phá thêm trong loạt bài viết JavaScript của chúng tôi để nắm vững ngôn ngữ này!