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

Tìm số đường đời (life path number) dựa trên ngày sinh trong JavaScript

Số đường đời (Life Path Number)

Số đường đời của một người được tính bằng cách cộng từng chữ số riêng lẻ trong ngày sinh của người đó, cho đến khi rút gọn thành một chữ số đơn lẻ.

Vấn đề

Chúng ta cần viết một hàm JavaScript nhận vào ngày tháng năm theo định dạng "yyyy-mm-dd" và trả về số đường đời cho ngày sinh đó. Ví dụ, nếu ngày là: 1999-06-10: năm: 1+9+9+9=28 -> 2+8=10 -> 1+0=1; tháng: 0+6=6; ngày: 1+0=1; kết quả: 1+6+1=8.

Ví dụ

Dưới đây là mã nguồn:

const date = '1999-06-10'; 
const findLifePath = (date = '') => { 
  const sum = (arr = []) => { 
    if(arr.length === 1){ 
      return +arr[0] 
    }; 
    let total = arr.reduce((acc, val) => acc + val); 
    if (total < 10){ 
      return total 
    }; 
    return sum(String(total).split("").map(Number)); 
  }; 
  let [year, month, day] = date.split("-") 
  year = sum(String(year).split("").map(Number)); 
  month = sum(String(month).split("").map(Number)); 
  day = sum(String(day).split("").map(Number)); 
  return sum([year,month,day]); 
}; 
console.log(findLifePath(date));

Kết quả

Kết quả đầu ra trong console:

8