Dùng split('') chia chuỗi cần xóa thành mảng ký tự, reduce() lần lượt replace() từng ký tự khỏi chuỗi gốc.
Ví dụ
const removeChars = (charsToRemove, originalStr) =>
charsToRemove.split('').reduce((str, char) => str.replace(char, ''), originalStr);
var original = "JOHNDOE";
var toRemove = "JOHN";
console.log(removeChars(toRemove, original)); // "DOE"
Cách chạy
node demo.js
Kết quả
DOE
Lưu ý: replace() chỉ thay lần đầu. Nếu chuỗi B có ký tự trùng lặp, dùng regex global: str.replace(new RegExp(char, 'g'), '').
Cách hiệu quả hơn:
const removeChars = (remove, str) => {
const set = new Set(remove);
return [...str].filter(c => !set.has(c)).join('');
};