java的
主要利用Calendar类的Calendar.DAY_OF_MONTH,当值为0时,默认获取到上个月的最后一天。
String strDate = "2019-12-10";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date parseDate = sdf.parse(strDate);
获取到当月的第一天
Calendar calendar = Calendar.getInstance();
calendar.setTime(parseDate);
calendar.set(Calendar.DAY_OF_MONTH,1);
Date firstDate = calendar.getTime();
System.out.println("当月一号为:"+sdf.format(firstDate));
获取到当月的最后一天
Calendar calendar = Calendar.getInstance();
calendar.setTime(parseDate);
calendar.add(Calendar.MONTH,1);
calendar.set(Calendar.DAY_OF_MONTH,0);
Date lastDate = calendar.getTime();
System.out.println("当月的最后一天为:"+sdf.format(lastDate));
js的
主要利用Date类,new Date(year,month,0) 当date的值为0时,默认获取上个月的最后一天。
//js获取当月的一号和最后一号。
var nowDate = new Date();
var year = nowDate.getFullYear();
var month = nowDate.getMonth();//month的范围为0~11
var firstDate = new Date(year,month,1);
console.log(firstDate.toLocaleDateString());//2019/12/1
var lastDate = new Date(year,month + 1,0);
console.log(lastDate.toLocaleDateString());//2019/12/31