false || function(){console.log(1)}() 这是什么写法?有什么好处?

大伯格
  • 371

false || function(){console.log(1)}()

上面这个function(){console.log(1)}() 为什么放在||后面就不报错了呢?
这是个什么写法呢?

回复
阅读 1.7k
2 个回答
mandex
  • 73
✓ 已被采纳

JavaScript里面有函数声明和函数表达式的区别。其中一点:函数表达式是可以立即执行的,后面加个括号就行了,函数声明后面加括号会报错。

根据JS的语法 || 后面一定是个表达式,所以加个括号就可以执行了,跟加括号感叹号是一样的,都是让解释器认为后面是一个表达式。

alaege
  • 180

一点好处都没用, 这明显是在装逼.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏