[转]根据生日的月份和日期,计算星座的js小函数

December 30th, 2008 by Dream☆Wing Leave a reply »

1.

// 取星座, 参数分别是 月份和日期
function getxingzuo(month,day){
//by Go_Rush(阿舜) from http://ashun.cnblogs.com/

var d=new Date(1999,month-1,day,0,0,0);
var arr=[];
arr.push([
"魔羯座",new Date(1999, 0, 1,0,0,0)])
arr.push([
"水瓶座",new Date(1999, 0,20,0,0,0)])
arr.push([
"双鱼座",new Date(1999, 1,19,0,0,0)])
arr.push([
"牡羊座",new Date(1999, 2,21,0,0,0)])
arr.push([
"金牛座",new Date(1999, 3,21,0,0,0)])
arr.push([
"双子座",new Date(1999, 4,21,0,0,0)])
arr.push([
"巨蟹座",new Date(1999, 5,22,0,0,0)])
arr.push([
"狮子座",new Date(1999, 6,23,0,0,0)])
arr.push([
"处女座",new Date(1999, 7,23,0,0,0)])
arr.push([
"天秤座",new Date(1999, 8,23,0,0,0)])
arr.push([
"天蝎座",new Date(1999, 9,23,0,0,0)])
arr.push([
"射手座",new Date(1999,10,22,0,0,0)])
arr.push([
"魔羯座",new Date(1999,11,22,0,0,0)])
for(var i=arr.length-1;i>=0;i){
if (d>=arr[i][1]) return arr[i][0];
}
}

2.

function getxingzuo(month,day){
var s=”魔羯水瓶双鱼牡羊金牛双子巨蟹狮子处女天秤天蝎射手魔羯”;
var arr=[19,50,84,116,148,181,214,246,278,310,341,373,383];
for(var i=0;i<arr.length;i++){
if ((((month-1)<<5)+day) <= arr[i]) return s.substr(i*2,2);
}
return “error”;
}

3.

// 根据生日的月份和日期,计算星座。  http://blog.csdn.net/cuixiping/
 

function getAstro(month,day){
var s=魔羯水瓶双鱼牡羊金牛双子巨蟹狮子处女天秤天蝎射手魔羯;
var arr=[20,19,21,21,21,22,23,23,23,23,22,22];
return s.substr(month*2-(day<arr[month-1]?2:0),2);
}

 

附十二星座日期对照:
魔羯座(12/22 – 1/19)、水瓶座(1/20 – 2/18)、双鱼座(2/19 – 3/20)、牡羊座(3/21 – 4/20)、
金牛座(4/21 – 5/20)、双子座(5/21 – 6/21)、巨蟹座(6/22 – 7/22)、狮子座(7/23 – 8/22)、
处女座(8/23 – 9/22)、天秤座(9/23 – 10/22)、天蝎座(10/23 – 11/21)、射手座(11/22 – 12/21)

代码相当简练!

  • Share/Save/Bookmark
Advertisement
Post comment as twitter logo facebook logo
Sort: Newest | Oldest