Nhóm method chuỗi thêm từ ES6 trở đi, thay được phần lớn regex đơn giản:
javascript
// kiểm tra nội dung
'hello world'.includes('world') // true — thay indexOf(...) !== -1
'file.pdf'.endsWith('.pdf') // true
'https://a.vn'.startsWith('https') // true
// đệm cho đủ độ dài
'5'.padStart(3, '0') // '005' — số thứ tự, mã đơn
'9'.padEnd(4, '.') // '9...'
// cắt khoảng trắng một phía
' x '.trimStart() // 'x '
' x '.trimEnd() // ' x'
// thay tất cả
'a-b-c'.replaceAll('-', '_') // 'a_b_c' — replace() chỉ đổi lần đầu
// lặp
'ab'.repeat(3) // 'ababab'
// truy cập âm
'hello'.at(-1) // 'o'Hai điểm hay bị hỏi thêm:
1. includes phân biệt hoa thường — muốn không phân biệt phải tự chuẩn hoá:
javascript
a.toLowerCase().includes(b.toLowerCase())2. replaceAll với chuỗi thì an toàn, với regex thì bắt buộc cờ g:
javascript
'a.b'.replaceAll('.', '-') // 'a-b'
'a.b'.replaceAll(/\./, '-') // TypeError — thiếu cờ g
'a.b'.replaceAll(/\./g, '-') // 'a-b'Lưu ý với tiếng Việt: các method này làm việc theo code unit UTF-16, nên 'Đ'.length là 1 nhưng emoji hay ký tự tổ hợp có thể cho kết quả bất ngờ — cần chính xác theo ký tự thì dùng Intl.Segmenter hoặc [...str].