国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

javascript - 為什么!function foo(){}返回false,!function foo(){}()返回true?

瀏覽:141日期:2023-04-21 13:50:28

問題描述

如題,謝謝!

問題解答

回答1:

js 中被判為 false 的只有以下幾個:

0

NaN

false

’’

null

undefined

因此:

!function foo () {} == !(function foo () {}) == false

!function foo(){}() == !(function foo () { return undefined })() == !undefined == true回答2:

我覺得你的問題可以改成!(function foo(){})返回false,!(function foo(){})()返回true?因為代碼function foo(){}()執行會返回Uncaught SyntaxError: Unexpected token的錯誤。

前者是對非空字符串取反,非空字符串的布爾值是true,取反之后自然是false;后者是自執行函數的返回值取反,返回值是undefined,轉化為布爾值是false,取反是true。

以上為個人見解,歡迎討論。Thanks!

標簽: JavaScript
主站蜘蛛池模板: 九龙城区| 昆山市| 蒙自县| 赫章县| 澄城县| 鹤庆县| 龙门县| 陵川县| 古浪县| 湘潭市| 马鞍山市| 台江县| 胶南市| 呈贡县| 安国市| 定远县| 兴仁县| 全州县| 五华县| 西华县| 儋州市| 海口市| 柳河县| 江北区| 阿鲁科尔沁旗| 广灵县| 新闻| 淳化县| 新泰市| 潜山县| 开江县| 利辛县| 陇西县| 彭州市| 顺平县| 凤台县| 武宣县| 辉县市| 大荔县| 长沙市| 皋兰县|