Javascript 看看一年是不是一个世纪
在d3中处理一些条件格式,需要检查日期是否为世纪之交。1945年和1998年不是,1900年和2000年不是。我不知道该怎么做,也许是想看看整年除以100是不是一个整数,但这对我来说似乎有点不具体。谢谢你的帮助 interval是传递给函数的字符串,表示勾号是否为月份、年份、十年等。我想检查在if(fulYear)条件下的日期是否为十年,因此它的if fullYear或date是一个世纪Javascript 看看一年是不是一个世纪,javascript,Javascript,在d3中处理一些条件格式,需要检查日期是否为世纪之交。1945年和1998年不是,1900年和2000年不是。我不知道该怎么做,也许是想看看整年除以100是不是一个整数,但这对我来说似乎有点不具体。谢谢你的帮助 interval是传递给函数的字符串,表示勾号是否为月份、年份、十年等。我想检查在if(fulYear)条件下的日期是否为十年,因此它的if fullYear或date是一个世纪 function tickFormat(interval) { return {
function tickFormat(interval) {
return {
"decade":d3.timeFormat("%y"),
"lustrum":d3.timeFormat("%y"),
"years":function(d) {
if (fullYear) {
format=d3.timeFormat("%Y")
return format(d)
}
else {
format=d3.timeFormat("%y");
return format(d)
}
},
"quarters":d3.timeFormat("%b"),
"months":d3.timeFormat("%b"),
"weeks":d3.timeFormat("%b"),
"days":d3.timeFormat("%d"),
"hours":d3.timeFormat("%I"+":00")
}[interval]
}
使用提醒运算符-
%
。这将返回除法的提醒,如果为0,则为一个世纪
if(1900%100==0){//do your job}
这样,您就不需要检查
1900/100
是否为整数。如果(1900%100==0){//do your job}
Ivanka更快,请解释原因:模数是一种好方法,它将为您省去一些关于js转换为浮点进行除法运算和随后的整数测试的麻烦