Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi và một số n làm hai đối số (số phải sao cho nó chia chính xác độ dài của chuỗi). Và chúng ta phải trả về một mảng gồm n chuỗi có độ dài bằng nhau.
Ví dụ -
If the string is "helloo" and the number is 3 Our output should be: ["ho", "eo", "ll"]
Ở đây, mỗi chuỗi con chứa chính xác (độ dài của mảng / n) ký tự. Và mỗi chuỗi con được định dạng bằng cách lấy các ký tự đầu tiên và cuối cùng tương ứng của chuỗi thay thế
Hãy viết mã cho chức năng này -
Ví dụ
const str = 'helloo'; const splitEqual = (str, n) => { if(str.length % n !== 0){ return false; } const len = str.length / n; const strArray = str.split(""); const arr = []; let i = 0, char; while(strArray.length){ if(i % 2 === 0){ char = strArray.shift(); }else{ char = strArray.pop(); }; if(i % len === 0){ arr[i / len] = char; }else{ arr[Math.floor(i / len)] += char; }; i++; }; return arr; }; console.log(splitEqual(str, 3));
Đầu ra
Đầu ra trong bảng điều khiển sẽ là -
[ 'ho', 'eo', 'll' ]