!function(){}(1)是什么意思,arguments指的是什么
! function (){}(1) 表示该函数是一个函数表达式而不是函数声明,后面的(1)是将参数1传递进去,前面的!,你可以理解成它是将函数声明转化成函数表达式的一种方法。
!function (){}(1)也等同于(function (){})(1);,!也可换成+、-这样的一元运算符,都可以起到相同的作用。
函数也是一种对象,arguments是它的一个属性,函数的属性还包括name,length等等。
原来是这样,我还一直纳闷呢现在明白了感谢解答
加括号也可以(function(a){})(1)也可以
我学习了,就是将函数声明转换为函数表达式,默认调用了.
还有arguments是参数对象的意思,不用写形参在函数上,也可以获取到函数上放进来的实参,利用arguments.length来获取参数个数,arguments[0],来获取第一个实参.