Phương thức ReplaceAll () trong JavaScript trả về một chuỗi mới với tất cả các kết quả phù hợp của một mẫu được thay thế bằng một chuỗi thay thế.
Cú pháp của replaceAll()
là:
str.replaceAll(pattern, replacement)
Đây, str
là một chuỗi.
Tham số ReplaceAll ()
Các replaceAll()
phương pháp có trong:
pattern
- một chuỗi con hoặc một regex sẽ được thay thếreplacement
-pattern
được thay thế bằng thisreplacement
(có thể là một chuỗi hoặc một hàm)
Giá trị trả về từ ReplaceAll ()
- Các
replaceAll()
phương thức trả về một chuỗi mới, với tất cả các trận đấu của một mô hình thay thế bằng một sự thay thế.
Lưu ý: A RegExp
không có cờ toàn cục (" g ") sẽ ném ra a TypeError
.
Ví dụ 1: Sử dụng ReplaceAll ()
const text = "Java is awesome. Java is fun."; // passing a string as the first parameter let pattern = "Java"; let new_text = text.replaceAll(pattern, "JavaScript"); console.log(new_text); // passing a regex as the first parameter pattern = /Java/g; new_text = text.replaceAll(pattern, "JavaScript"); console.log(new_text);
Đầu ra
JavaScript thật tuyệt vời. JavaScript là niềm vui JavaScript thật tuyệt vời. JavaScript rất thú vị.
Thay thế mà không cần xem xét chữ hoa / chữ thường
Các replaceAll()
phương pháp là trường hợp nhạy cảm. Để thực hiện thay thế không phân biệt chữ hoa chữ thường, bạn cần sử dụng regex có i
công tắc (tìm kiếm không phân biệt chữ hoa chữ thường).
Ví dụ 2: Thay thế phân biệt chữ hoa chữ thường
const text = "javaSCRIPT JavaScript"; // all occurrences of javascript is replaced let pattern = /javascript/gi; // case-insensitive and global search let new_text = text.replaceAll(pattern, "JS"); console.log(new_text); // JS JS
Đầu ra
JS JS
Ví dụ 3: Truyền chức năng thay thế
Bạn cũng có thể truyền một hàm (thay vì một chuỗi) làm tham số thứ hai cho replaceAll()
phương thức.
const text = "3.1415"; // generate a random digit between 0 and 9 function generateRandomDigit() ( return Math.floor(Math.random() * 10); ) // regex to match a digit const pattern = /d/g; const new_text = text.replaceAll(pattern, generateRandomDigit); console.log(new_text);
Đầu ra
4.3518
Bạn có thể nhận được đầu ra khác khi chạy chương trình này. Đó là bởi vì chữ số đầu tiên trong văn bản được thay thế bằng một chữ số ngẫu nhiên từ 0 đến 9 .
Đề xuất Đọc: Chuỗi JavaScript thay thế ()