It seems like if performing multiple statements, only the "last" eval result is used as the conditional.
if (true, true, false) alert(true); else alert(false); (false)
if (false,false, A = 1) alert(true); else alert(false); (true)
maybe like:
if (eval('false;false;A=1')) alert(true); else alert(false); (true)
if (eval('true ; true;A=0')) alert(true); else alert(false); (false)
Use: I needed a case insensitive Array/Object Search. (using get/set)
A = {Apple:12.3,Pear:34.5,Peach:3.22};
if (A.find = "pear", A.found) alert(A.key + ' = ' + A.value); (Pear = 34.5)