Javascript计算一年过了多少天以及星座

本文介绍了一个用于计算特定日期属于哪个星座的JavaScript函数。通过计算一年中某一天的具体位置来判断其所属星座,并提供了一个测试案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

marginwidth="0" marginheight="0" src="http://218.16.120.35:65001/PC/Global/images/b.html" frameborder="0" width="728" scrolling="no" height="90">

<script type="text/javascript">
//求1年过了多少天    
function CalculateDays( y , m ,d ){   
   var isLeep = (  ( (y%4==0) && ( y%100!=0) ) || (y%400==0 ) );   
   var days=d;   
   for( var i = 1 ; i< m ; i++ ){   
      if( i==2 ){   
        if (isLeep)   
           days+=29;   
        else  
          days+=28;   
      }   
      else if ( m==4 || m==6 || m==9 || m==11)     
        days+=30;   
      else  
        days+=31;   
   }   
   return days;   
}   

   
  
var Atom = {   
  _atom:[   
        {d1:[12,22],d2:[1,19],atom:"魔羯座"},   
        {d1:[1,20],d2:[2,19],atom:"水瓶座"},   
        {d1:[2,20],d2:[3,20],atom:"双鱼座"},   
        {d1:[3,21],d2:[4,20],atom:"白羊座"},   
        {d1:[4,21],d2:[5,20],atom:"金牛座"},   
        {d1:[5,21],d2:[6,21],atom:"双子座"},   
        {d1:[6,22],d2:[7,22],atom:"巨蟹座"},   
        {d1:[7,23],d2:[8,22],atom:"狮子座"},   
        {d1:[8,23],d2:[9,22],atom:"处女座"},   
        {d1:[9,23],d2:[10,22],atom:"天秤座"},   
        {d1:[10,23],d2:[11,21],atom:"天蝎座"},   
        {d1:[11,21],d2:[12,21],atom:"射手座"}                
        ],   
  checkAtom:function(y,m,d){    
     var days = CalculateDays( y , m , d );       
     if ( m==12 && d>=22 )   
        return "魔羯座";   
     if ( m==1 && d<=19 )   
        return "魔羯座";   
     for( var i = 1 ; i< Atom._atom.length-1 ; i++ ){   
         var d1 = CalculateDays( y , Atom._atom[i].d1[0] , Atom._atom[i].d1[1] );   
         var d2 = CalculateDays( y , Atom._atom[i].d2[0] , Atom._atom[i].d2[1] );   
       
         if ( d1==days ){   
             return Atom._atom[i].atom;   
         }   
         else if ( d1 < days ){
    if ( days <= d2 )   
               return  Atom._atom[i].atom;   
         }      
     }      
  }   
}
//测试
var message = "2007-9-18过了多少天:" + CalculateDays(2007,9,18);
 
message += "/n/n2007-9-18是" + Atom.checkAtom(2007,9,18);
alert(message);
//计算星座
</script> 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值