Rumah >hujung hadapan web >tutorial js >如何通过日期计算星座
这篇文章主要介绍了关于通过日期计算星座,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
起始月份 | 号数 | 星座 | 结束月份 | 号数 | 时间区间 |
---|---|---|---|---|---|
12 | 22 | 摩羯座 | 1 | 19 | 12/22 - 1/19 |
1 | 20 | 水瓶座 | 2 | 18 | 1/20 - 2/18 |
2 | 19 | 双鱼座 | 3 | 20 | 2/19 - 3/20 |
3 | 21 | 白羊座 | 4 | 20 | 3/22 - 4/20 |
4 | 21 | 金牛座 | 5 | 20 | 4/22 - 5/20 |
5 | 21 | 双子座 | 6 | 21 | 5/22 - 6/21 |
6 | 22 | 巨蟹座 | 7 | 22 | 6/22 - 7/22 |
7 | 23 | 狮子座 | 8 | 22 | 7/22 - 8/22 |
8 | 23 | 处女座 | 9 | 22 | 8/22 - 9/22 |
9 | 23 | 天秤座 | 10 | 22 | 9/22 - 10/22 |
10 | 23 | 天蝎座 | 11 | 21 | 10/22 - 11/21 |
11 | 22 | 射手座 | 12 | 21 | 11/22 - 12/21 |
12 | 22 | 摩羯座 | 1 | 19 | 12/22 - 1/19 |
一年12个月份
抽象一个数组
c = [摩羯,水瓶, 双鱼,白羊,金牛,双子,巨蟹,狮子,处女,天秤,天蝎,射手,摩羯]
c 为月份列表
该数组中序号为 1 的水瓶座对应的起始月份为 1月
序号为 起始月份 或者 (结束月份 - 1)
日期所对应的星座 起始月份为日期所在月 或者 终结月份为该月(即起始月份为日期所在月-1)
为了得出日期对应的星座,我们通过日期来计算对应星座的起始月份
startMonth = month - [(day < Date[month]) ? 1 : 0] c = [摩羯,水瓶, 双鱼,白羊,金牛,双子,巨蟹,狮子,处女,天秤,天蝎,射手,摩羯] index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] Date = [22, 20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22]
startMonth - 计算后对应星座的起始月份;
Month - 日期对应的月份;
day - 日期对应的号数;
Date - 月份列表对应的日期列表;
解释:
对应星座起始月份 = 当前月份 - [(当前日期是否小于对应月份的日期)是则为1,否则为0]
判断(日期对应号数 6f4135abb2d419e1ccf9fd14ee6fede6 '865778999988'
startMonth = month - [(day < Date[month]) ? 1 : 0] => month - (day - 14 < '865778999988'.charAt(month)) true 自动变为 1; true 自动变为 0; charAt为寻找字符串对应位置的str
最终代码
var date = new Date(2017,1,12); //设置日期 function getHoroscope(date) { var c = ['摩羯','水瓶','双鱼','白羊','金牛','双子','巨蟹','狮子','处女','天秤','天蝎','射手','摩羯'] var month = date.getMonth() + 1; var day = date.getDate(); var startMonth = month - (day - 14 < '865778999988'.charAt(month)); return c[startMonth] } getHoroscope(date); //水瓶
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
原生JS和jQuery分别使用jsonp来获取“当前天气信息”
Atas ialah kandungan terperinci 如何通过日期计算星座. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!