Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript nhận một số n (n> 0). Hàm của chúng ta sẽ trả về một mảng có chứa các phần liên tục của các chữ số lẻ hoặc chẵn. Có nghĩa là chúng ta nên chia nhỏ số tại các vị trí khi gặp các số khác nhau (lẻ đối với chẵn, chẵn đối với lẻ).
Ví dụ
Sau đây là mã -
const num = 124579; const splitDifferent = (num = 1) => { const str = String(num); const res = []; let temp = ''; for(let i = 0; i < str.length; i++){ const el = str[i]; if(!temp || +temp[temp.length - 1] % 2 === +el % 2){ temp += el; }else{ res.push(+temp); temp = el; }; }; if(temp){ res.push(+temp); temp = ''; }; return res; }; console.log(splitDifferent(num));
Đầu ra
[ 1, 24, 579 ]