You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					48 lines
				
				1014 B
			
		
		
			
		
	
	
					48 lines
				
				1014 B
			| 
								 
											4 years ago
										 
									 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var DayWithinYear = require('./DayWithinYear');
							 | 
						||
| 
								 | 
							
								var InLeapYear = require('./InLeapYear');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// https://262.ecma-international.org/5.1/#sec-15.9.1.4
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = function MonthFromTime(t) {
							 | 
						||
| 
								 | 
							
									var day = DayWithinYear(t);
							 | 
						||
| 
								 | 
							
									if (0 <= day && day < 31) {
							 | 
						||
| 
								 | 
							
										return 0;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									var leap = InLeapYear(t);
							 | 
						||
| 
								 | 
							
									if (31 <= day && day < (59 + leap)) {
							 | 
						||
| 
								 | 
							
										return 1;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((59 + leap) <= day && day < (90 + leap)) {
							 | 
						||
| 
								 | 
							
										return 2;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((90 + leap) <= day && day < (120 + leap)) {
							 | 
						||
| 
								 | 
							
										return 3;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((120 + leap) <= day && day < (151 + leap)) {
							 | 
						||
| 
								 | 
							
										return 4;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((151 + leap) <= day && day < (181 + leap)) {
							 | 
						||
| 
								 | 
							
										return 5;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((181 + leap) <= day && day < (212 + leap)) {
							 | 
						||
| 
								 | 
							
										return 6;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((212 + leap) <= day && day < (243 + leap)) {
							 | 
						||
| 
								 | 
							
										return 7;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((243 + leap) <= day && day < (273 + leap)) {
							 | 
						||
| 
								 | 
							
										return 8;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((273 + leap) <= day && day < (304 + leap)) {
							 | 
						||
| 
								 | 
							
										return 9;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((304 + leap) <= day && day < (334 + leap)) {
							 | 
						||
| 
								 | 
							
										return 10;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									if ((334 + leap) <= day && day < (365 + leap)) {
							 | 
						||
| 
								 | 
							
										return 11;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								};
							 |