function前面加个!代表什么意思?

来源:3-4 [JavaScript]严格模式

qazxcvbnmlp

2015-03-25 08:15

有特殊含义?

写回答 关注

2回答

  • _Exception
    2015-03-25 09:42:00
    已采纳

    告诉浏览器自动运行这个匿名函数

    qazxcv...

    非常感谢!

    2015-03-26 07:39:06

    共 1 条回复 >

  • Bosn
    2015-03-26 11:47:00

    没错哦,就是匿名函数。

    不仅可以用!,还可以用+, -, ~都可以。

    解释器在解释一个语句时,如果以function开头,就会理解为函数声明。

    而前面加一个!可以让解释器理解为函数表达式,这样就可以立即调用了。

    例如:

    !funciton() {

    }();


    而省略了!的话:

    function() {

    }();


    就会理解为函数声明,而函数声明没有名字会报错。如果有函数名:

    function f() {

    }();


    还是会报错,因为function f(){}函数声明会被前置,相当于:

    function f(){}


    (); // 这里报错



    慕UI352...

    我说怎么回答的这么好,原来是老师自己在回答... 估计老师已经不怎么上慕课了吧. 很少有慕课上的讲师亲自回答学生的问题 如果老师能在视频教程里把可能会出现的学生不能理解的知识点说清就好了 大家好多都是学完入门和进阶后直接过来的

    2017-11-19 23:24:22

    共 1 条回复 >

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281102 学习 · 1020 问题

查看课程

相似问题