Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在javascript garden网站上读到了这篇文章。有人可以解释它是如何工作的吗?
!function(){console.log("hi")}()
最后的“执行”括号不能在函数表达式之后合法地完成。一个典型的(更有意义的,IMO)写这个的方式是用更多的括号:
(function(){console.log('hi')})()
通过在函数表达式之前添加前缀!,JS 解释器读取函数然后运行它。这是因为!运算符优先于使用 final 调用函数()
!
()
看看这个答案
tl; dr它定义了一个函数来打印出'hi'并立即调用它。