我试图定义以下内容:
function twelveHourTime(date)
{
let hour = date.getHours() % 12;
if (hour == 0)
hour = 12;
return
{
hour: hour.toString(),
minute: date.getMinutes().toString().padStart(2, '0'),
suffix: date.getHours() < 12 ? "AM" : "PM"
};
}
并且return
语句中的对象文字没有这样解析。
但是,以下return
语句应正常工作:
return {
hour: hour.toString(),
minute: date.getMinutes().toString().padStart(2, '0'),
suffix: date.getHours() < 12 ? "AM" : "PM"
};
我假设解析器将前一种情况下的初始花括号视为一个块的开始,而不是对象文字的开始,但是如果是这样,那么在后一种情况下它是否应该这样做?