js中的&& 和 || 一直以為是php那一套,上網查了一些資料,才發現不一樣
a() && b() :如果執行a()後返回true,則執行b()並返回b的值;如果執行a()後返回false,則整個表示式返回a()的值,b()不執行;a() || b() :如果執行a()後返回true,則整個表示式返回a()的值,b()不執行;如果執行a()後返回false,則執行b()並返回b()的值;
alert( (1 && 3 || 0) && 4 ); //結果4 ①
alert( 1 && 3 || 0 && 4 ); //結果3 ②
alert( 0 && 3 || 1 && 4 ); //結果4 ③
分析:
語句①:1&&3 返回3 => 3 || 0 返回 3 => 3&&4 返回 4
語句②:先執行1&&3 返回3,在執行0&&4返回0,最後執行結果比較 3||0 返回 3
語句③:先執行0&&3 返回0,在執行1&&4返回4,最後執行結果比較 0||4 返回 4
注:非0的整數都為true,undefined、null和空字元」」 為false。
1、只要「||」前面為false,不管「||」後面是true還是false,都返回「||」後面的值。
2、只要「||」前面為true,不管「||」後面是true還是false,都返回「||」前面的值。
1、只要「&&」前面是false,無論「&&」後面是true還是false,結果都將返「&&」前面的值;
2、只要「&&」前面是true,無論「&&」後面是true還是false,結果都將返「&&」後面的值;
參考資料:
JS中 和 用法
和 在jquery源 內尤為使用廣泛,由於本人沒有系統的學習js,所以只能粗略的自我理解出來,希望大家指點下。粗略理解如下 a b 如果執行a 後返回true,則執行b 並返回b的值 如果執行a 後返回false,則整個表示式返回a 的值,b 不執行 a b 如果執行a 後返回true,則整個表示式...
JS中 和 用法
和 在jquery源 內尤為使用廣泛,由於本人沒有系統的學習js,所以只能粗略的自我理解出來,希望大家指點下。粗略理解如下 a b 如果執行a 後返回true,則執行b 並返回b的值 如果執行a 後返回false,則整個表示式返回a 的值,b 不執行 a b 如果執行a 後返回true,則整個表示式...
JS中 和 用法
和 在jquery源 內尤為使用廣泛,由於本人沒有系統的學習js,所以只能粗略的自我理解出來,希望大家指點下。粗略理解如下 a b 如果執行a 後返回true,則執行b 並返回b的值 如果執行a 後返回false,則整個表示式返回a 的值,b 不執行 a b 如果執行a 後返回true,則整個表示式...