Conditions evaluated as needed

by Alon Rotem

JavaScript

function alwaysReturnsTrue() {
    alert("returning true!");
    return true;
}

function alwaysReturnsFalse() {
    alert("returning false!");
    return false;
}

//Only the first condition is checked
if((alwaysReturnsTrue()) || (alwaysReturnsFalse())) {
    alert("++ condition evaluated as true ++ ");
}

//both conditions are checked
if((alwaysReturnsTrue()) && (alwaysReturnsFalse())) {
    alert("++ condition evaluated as true ++ ");
}
else {
        alert("-- condition evaluated as false -- ");
}