是否可以缩短javascript以避免if和else



我正在尝试用javascript:转换PHP代码段

function year_shortcode() {
$fromYear = 2010;
$thisYear = (int)date('Y');
return $fromYear . (($fromYear != $thisYear) ? '-' . $thisYear : '');
} add_shortcode('year', 'year_shortcode');

到目前为止,我所做的是:

var fromYear='2010';
var thisYear= new Date().getFullYear();
if (fromYear=thisYear) {
document.write(fromYear);
}
else {
document.write(fromYear + '-' + thisYear);
}

我想避免if和else语句,并像在PHP中那样缩短它。

你可以做这个

需要注意的是,=是赋值运算符,如果您想检查两个值之间的相等性,请使用===而不是

document.write(fromYear === thisYear ? fromYear : fromYear + '-' + thisYear)

我试图像在PHP中一样使用三元运算符,多亏了@Pointy和@user4642212以及@hgb123的回答,我能够用解决我的问题

document.write((fromYear != thisYear) ? fromYear + " - " + thisYear : thisYear);

最新更新