我在调试某些Javascript时注意到我正在传递的额外参数没有出现在arguments
对象中。函数声明有一个命名参数,并且正在传递两个参数,但参数数组只包含第一个参数。当试图在Javascript控制台或jsfiddle中重现问题时,参数总是正确传递。问题是什么?未包含在'参数'对象中的未命名的参数
1
A
回答
3
该问题仅在Chrome中发生,似乎是Chrome优化。起初我没有意识到的是,在我发现参数不完整的原始函数中,我在控制台中检查了arguments
,但是在我创建的所有测试中,我正在执行console.log(arguments)
或类似的操作。
如果我没有在一个函数中引用arguments
,Chrome不会花费它来填充它。因此,通过控制台检查参数时,它只显示作为命名参数存在的参数。我创建了一个jsfiddle来证明这一点:http://jsfiddle.net/bgmort/2kmJs/
因为我花了几个小时寻找答案,所以希望记录下我发现的内容将会为别人节省一点时间。
相关问题
- 1. C#lambda未命名参数
- 2. JavaScript:未命名函数的参数
- 3. 使用可变长度的未命名的参数命名参数在Python
- 4. HQL对象命名参数
- 5. 如何命名未使用的参数?
- 6. 在MultiBinding命令参数中包含绑定对象
- 7. Laravel - 无效的参数号:参数未定义[命名参数错误]
- 8. JPA Criteria ParameterExpression - QueryException未命名参数[ard]
- 9. 如何实现未命名参数
- 10. 命名的Javascript功能参数VS参数对象
- 11. WCF参考中未包含的类
- 12. 函数定义中的未命名参数
- 13. 如何在SqlCommand中设置未命名的SQL参数
- 14. 函数签名中的对象参数的含义是什么?
- 15. 参数对象未初始化AX 2012
- 16. “参数包含未初始化的数据”设置框时
- 17. 在Makefile中包含参数
- 18. 参数字典包含参数的OrderID
- 19. 选择包含未解决的参考
- 20. 如何在F#文档中包含命名参数
- 21. 参数化查询说:“不允许混合命名参数和未命名参数。”
- 22. 函数的一个未命名参数是否有默认值?
- 23. 命名参数通过传递命名的参数CakePHP中
- 24. 如何在yaml中创建未命名对象的数组?
- 25. Bizzare方法签名,具有未命名的参数(obj-c)
- 26. 跳过未知的命令行参数
- 27. OleDbParameterCollection不包含参数名“”的OleDbParameter
- 28. Swift方法中的多个未命名参数
- 29. 如何引用ES6中未命名的解构参数?
- 30. 请求参数未绑定到grails命令对象
得到的代码显示? – Rob 2012-04-12 23:49:36