課程
/前端開發
/JavaScript
/JavaScript進階篇
邏輯運算符 || 的運算結果,為什么不是布爾值,而是數值呢?
2017-03-18
源自:JavaScript進階篇 9-18
正在回答
可以看看這篇文章:http://www.tashan10.com/javascript-de-ling-huo-yun-yong/
摘要:
數據類型 ? ????????????轉換為bool后的值(對應的true或false) ? ?null ? ?????????????? ?????FALSE ? ?undefined ? ?? ????? FALSE ? ?Object ? ? ? ? ??? ?? ? TRUE ? ?function ? ????????? ? TRUE ? ?0 ? ???????????????????????FALSE ? ?1 ?????????????? ???????? ?TRUE ? ?0、1之外的數字 ? ?TRUE ? ?字符串 ? ???????????????TRUE ? ?""(空字符串) ? ??????FALSE ? ?
數據類型 ? ????????????轉換為bool后的值(對應的true或false) ? ?
null ? ?????????????? ?????FALSE ? ?
undefined ? ?? ????? FALSE ? ?
Object ? ? ? ? ??? ?? ? TRUE ? ?
function ? ????????? ? TRUE ? ?
0 ? ???????????????????????FALSE ? ?
1 ?????????????? ???????? ?TRUE ? ?
0、1之外的數字 ? ?TRUE ? ?
字符串 ? ???????????????TRUE ? ?
""(空字符串) ? ??????FALSE ? ?
如果&&左側表達式的值為真值,則返回右側表達式的值;否則(如果左側表達式的值為假),則返回左側表達式的值。
如果||左側表達式的值為真值,則返回左側表達式的值;否則(如果左側表達式的值為假),則返回右側表達式的值。
可以這樣理解,js邏輯或與運算返回值為判斷邏輯返回第一個值或第二值,而由于兩個波爾類型邏輯或與運算返回的一定是布爾類型,故造成這樣的誤解。其底層原理應該是判斷邏輯返回第一個值或第二個值而不是通常我們理解的true or false
http://blog.csdn.net/kevinhjing/article/details/48206787
作者說的有點含糊,大概意思是邏輯或與運算等式兩邊為布爾類型則返回布爾類型,為其他數據類型返回其他數據類型。兩個都有根據邏輯返回對應的。。
var a = 0 || 1;
結果 a = 1;
目前只見過true or false ?;可以把你的代碼貼出來看看
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
5 回答布爾值和字符串是什么,為什么數值和布爾值不用加引號?
2 回答怎么儲存布爾值啊。布爾值的結果不是真或假嗎
3 回答算數運算符%
1 回答為何運算不出來結果呢?
1 回答為什么運算結果運行不出來?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-07-17
可以看看這篇文章:http://www.tashan10.com/javascript-de-ling-huo-yun-yong/
摘要:
2017-04-28
可以這樣理解,js邏輯或與運算返回值為判斷邏輯返回第一個值或第二值,而由于兩個波爾類型邏輯或與運算返回的一定是布爾類型,故造成這樣的誤解。其底層原理應該是判斷邏輯返回第一個值或第二個值而不是通常我們理解的true or false
2017-04-28
http://blog.csdn.net/kevinhjing/article/details/48206787
作者說的有點含糊,大概意思是邏輯或與運算等式兩邊為布爾類型則返回布爾類型,為其他數據類型返回其他數據類型。兩個都有根據邏輯返回對應的。。
2017-04-28
var a = 0 || 1;
結果 a = 1;
2017-03-19
目前只見過true or false ?;可以把你的代碼貼出來看看