我正在使用以下功能来确定一个月内的天数:
function daysInMonth(month,year) {
return new Date(year,month,0).getDate();
}
现在,当我执行以下操作时,它的效果非常好:
var currMonth = currDate.getMonth(),
currYear = currDate.getFullYear(),
daysInMonth = daysInMonth(currYear,currMonth+1);
但是,如果我尝试再次使用相同的功能:
var test = daysInMonth(currYear,currMonth+2);
我收到以下错误:
Uncaught TypeError: number is not a function
为什么会这样?
答案 0 :(得分:3)
您正在使用函数daysInMonth的值分配变量daysInMonth,从而有效地用整数替换该函数。给你的变量一个不同的名称,它会起作用。
var currMonth = currDate.getMonth(),
currYear = currDate.getFullYear(),
numberOfDaysInMonth = daysInMonth(currYear,currMonth+1);
var test = daysInMonth(currYear,currMonth+2);
答案 1 :(得分:0)
函数和变量名称是相同的更改函数名称
function daysInTheMonth(month,year) {
return new Date(year,month,0).getDate();
}
var test = daysInTheMonth(currYear,currMonth+2);