在if条件语句中赋值变量,是好的做法吗?【已关闭】
- 论坛
- 在if条件语句中赋值变量,是好的做法吗?【已关闭】
8 浏览
在if条件语句中赋值变量,是好的做法吗?【已关闭】
一年前,我从像Java这样的经典面向对象语言转向了JavaScript。以下代码在Java中绝对不被推荐使用(甚至不正确):
if (dayNumber = getClickedDayNumber(dayInfo)) { alert("day number found : " + dayNumber); } function getClickedDayNumber(dayInfo) { dayNumber = dayInfo.indexOf("fc-day"); if (dayNumber != -1) { // 子字符串找到 // 通常一个日历月包含"40"天,所以这一定能找到它的日期。 return parseInt(dayInfo.substring(dayNumber + 6, dayNumber + 8)); } return false; }
基本上,我刚刚发现我可以在if条件语句中将一个变量赋值给一个值,并立即将赋值后的值视为布尔值进行检查。
为了更安全,我通常会将其分为两行代码,先赋值然后检查变量,但现在我发现这样做在有经验的JavaScript开发者眼中是否是良好的实践呢?