Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tách số thành các phần liên tiếp chẵn hoặc lẻ bằng JavaScript


Vấn đề

Chúng ta cần viết một hàm JavaScript nhận vào một số n (n>0). Hàm phải trả về một mảng chứa các phần liên tiếp của các chữ số chẵn hoặc lẻ. Nghĩa là chúng ta tách số tại các vị trí gặp chữ số khác loại (chẵn cho lẻ, lẻ cho chẵn).

Ví dụ

Dưới đâ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));

Kết quả

[ 1, 24, 579 ]