匿名函数的调用

偶然看到一个jquery插件代码函数的写法是

!function(){

}();

一般来说应该是括号包裹,结果是!

原来!解析器也能正常解析,用括号包裹函数体的时候,解析器将以函数表达式的方法调用定义函数,还有+-~也可以正常解析

参考博客:https://www.cnblogs.com/1175429393wljblog/p/8533985.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script type="text/javascript">
            //第一种调用匿名函数的方式
            (function(){
                alert('我是()');
            }());
            //第二种调用匿名函数的方式
            !function(){
                alert('我是!')
            }();
            //拓展+-||
            +function(){
                alert('我是+')
            }();
            -function(){
                alert('我是-')
            }();
            ~function(){
                alert('我是~')
            }();
        </script>
    </body>
</html>

 

posted @ 2019-08-25 15:58  水火和牛  阅读(1022)  评论(0编辑  收藏  举报