私は1年前に、Javaなどの古典的なOO言語からJavaScriptに移行しました。次のコードは、Javaでは絶対に推奨されません(または正しくありません)。
if(dayNumber = getClickedDayNumber(dayInfo))
{
alert("day number found : " + dayNumber);
}
function getClickedDayNumber(dayInfo)
{
dayNumber = dayInfo.indexOf("fc-day");
if(dayNumber != -1) //substring found
{
//normally any calendar month consists of "40" days, so this will definitely pick up its day number.
return parseInt(dayInfo.substring(dayNumber+6, dayNumber+8));
}
else return false;
}
基本的に、if条件ステートメントの値に変数を割り当てて、割り当てられた値をブール値であるかのようにすぐにチェックできることがわかりました。
より安全な賭けのために、私は通常それを2行のコードに分けて、最初に割り当ててから変数をチェックしますが、これを見つけたので、経験豊富なJavaScript開発者の目には良い習慣かどうか疑問に思っていますか?
"The following code is definitely not recommended (or event not correct) in Java..."JavaScriptでも正しいですか?なぜなら、私が見る限り、trueのreturn parseInt(...)場合dayNumber != -1は整数()を返し、falseの場合はブール値を返すためです。