Bir yıl önce Java gibi klasik OO dillerinden JavaScript'e geçtim. Aşağıdaki kod Java'da kesinlikle önerilmez (hatta doğru değildir):
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;
}
Temel olarak, if koşul ifadesindeki bir değere bir değişken atayabileceğimi ve atanan değeri sanki booleanmış gibi hemen kontrol edebileceğimi öğrendim.
Daha güvenli bir bahis için, genellikle bunu iki satır koda ayırırım, önce atarım sonra değişkeni kontrol ederim, ancak şimdi bunu bulduğuma göre, deneyimli JavaScript geliştiricilerinin gözünde bunun iyi bir uygulama olup olmadığını merak ediyorum.
"The following code is definitely not recommended (or event not correct) in Java..."JavaScript'te bile doğru mu? Çünkü görebildiğim kadarıyla,return parseInt(...)eğerdayNumber != -1doğruysa bir tamsayı ( ) , yanlışsa bir boole döndürüyorsunuz.