在项目中,我想写下当前的日期和月份,如下所示:
Today is the 13th of September
获取当前日期时,没有错误。但是,当将当前月份编号转换为当前月份名称时,我会得到以下错误:
Date.jsx:4 Uncaught RangeError: Maximum call stack size exceeded
我在Date组件中的代码:
function Date() {
let date = new Date()
// console.log(dayDate.getDate())
const takeMonth = (month) => {
const monthName = date.setMonth(month - 1)
return monthName.toLocaleString("default", { month: "long" })
}
return <div> Date {takeMonth(3)}</div>
}
感谢所有的回答!
您当前正在通过定义自己的函数Date
来重写Date
函数,因此当您在函数内部调用new Date()
时,实际上您正在调用自己的重写,这将创建一个无限循环。。。
您应该将自己的函数重命名为:
function getDate() {
let date = new Date()
/* rest of the code */
}