function q(now, timePeriodType) { console.log('---------'); console.log(now); console.log(timePeriodType); var time_process_value = 0; var time_process_total_value = 0; if (timePeriodType == '月') { time_process_value = now.getDate() - 1; time_process_total_value = new Date(now.getFullYear(), now.getMonth()+1, 0).getDate(); } else if (timePeriodType == '年') { var start = new Date(now.getFullYear(), 0, 1); var diff = now - start; var oneDay = 1000 * 60 * 60 * 24; time_process_value = Math.floor(diff / oneDay); var end = new Date(now.getFullYear()+1, 0, 1); var diffend = end - start; time_process_total_value = Math.floor(diffend / oneDay); } else if (timePeriodType == '季') { console.log('--季'); var currentMonthIndex = now.getMonth(); // 从零开始 var currentQuarterIndex = Math.floor(currentMonthIndex / 3); // 从零开始 console.log('currentMonthIndex'+currentMonthIndex+'currentQuarterIndex'+currentQuarterIndex); var quarterBeginDate = new Date(now.getFullYear(), currentQuarterIndex*3, 1); var quarterEndDate = new Date(now.getFullYear(), (currentQuarterIndex+1)*3, 1); console.log(quarterBeginDate); console.log(quarterEndDate); var oneDay = 1000 * 60 * 60 * 24; var diff = now - quarterBeginDate; var diffend = quarterEndDate - quarterBeginDate time_process_value = Math.floor(diff / oneDay); time_process_total_value = Math.floor(diffend / oneDay); } console.log(time_process_value); console.log(time_process_total_value); } q(new Date(), '月'); q(new Date(), '季'); q(new Date(), '年'); q(new Date(2017, 0, 1), '月'); q(new Date(2017, 0, 1), '季'); q(new Date(2017, 0, 1), '年'); q(new Date(2017, 11, 31), '月'); q(new Date(2017, 11, 31), '季'); q(new Date(2017, 11, 31), '年');