Mở rộng String.prototype thêm phương thức swapCase(): chuyển chữ hoa→thường, thường→hoa, giữ ký tự khác.
Giải pháp
Mã triển khai:
const str = 'ThIS iS A CraZY StRInG';
String.prototype.swapCase = function() {
let res = '';
for (let i = 0; i < this.length; i++) {
const char = this[i];
if (char.toLowerCase() === char.toUpperCase()) {
res += char; // Không phải chữ cái
} else if (char === char.toLowerCase()) {
res += char.toUpperCase();
} else {
res += char.toLowerCase();
}
}
return res;
};
console.log(str.swapCase());
Kết quả
Đầu ra trong console:
tHis Is a cRAzy sTriNg
Cảnh báo: Sửa đổi prototype built-in không khuyến khích trong production (gây xung đột, khó debug).