Cần viết hàm JS nhận chuỗi str và số nguyên num. Hàm đảo ngược num ký tự đầu tiên cho mỗi 2*num ký tự tính từ đầu chuỗi. Nếu còn lại dưới num ký tự, đảo ngược tất cả. Nếu còn lại từ num đến 2*num ký tự, đảo ngược num ký tự đầu, giữ nguyên phần còn lại.
Ví dụ:
Nếu chuỗi và số:
const str = 'klmnopq'; const num = 2;
Kết quả:
const output = 'lkmnpoq';
Đảo 2 ký tự đầu của 4 ký tự đầu, sau đó còn 3 ký tự -> đảo 2 ký tự đầu của 3 ký tự.
Ví dụ
Mã thực hiện:
const str = 'klmnopq'; const num = 2; const reverseString = (str = '', num = 1) => { if(str.length < num){ return str.split("").reverse().join(""); }; let res = ""; for(let i = 0; i < str.length; i += (2*num)){ res += str.split("").slice(i, i+num).reverse().join(""); res += str.slice(i+num, i+2*num); }; return res; }; console.log(reverseString(str, num));
Kết quả
Kết quả in ra console:
lkmnpoq