Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การหาราศีจากวันเกิดใน JavaScript


ปัญหา

เราต้องเขียนฟังก์ชัน JavaScript ที่รับอ็อบเจกต์ Date และจากอ็อบเจกต์นั้น ฟังก์ชันควรคืนค่าราศี (zodiac sign) ที่เกี่ยวข้องกับวันเกิดนั้น

ตัวอย่าง

โค้ดตัวอย่างดังนี้:

const date = new Date(); // as on 2 April 2021
const findSign = (date) => {
  const days = [21, 20, 21, 21, 22, 22, 23, 24, 24, 24, 23, 22];
  const signs = ["Aquarius", "Pisces", "Aries", "Taurus", "Gemini", "Cancer", "Leo",
    "Virgo", "Libra", "Scorpio", "Sagittarius", "Capricorn"];
  let month = date.getMonth();
  let day = date.getDate();
  if(month == 0 && day <= 20){
    month = 11;
  }else if(day < days[month]){
    month--;
  };
  return signs[month];
};
console.log(findSign(date));

ผลลัพธ์

Aries

ผลลัพธ์อาจแตกต่างกันไปตามเวลาที่รันฟังก์ชัน เนื่องจากเราใช้วันที่ปัจจุบัน