为什么要在函数的形参最后放undefined?

!function(window,document,undefined){...}(window,document)

看别人的代码时看到了这种形式的代码,形参列表最后跟个undefined是出于什么目的,不能理解?

阅读 2.1k
1 个回答

因为ECMA3(老版本浏览器)中,undefined是可以被重写的。
所以传入一个形参,而实参不传,?则默认为undefined。
当然例子里面的undefined只是示例,你传入a,b,c都行。

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