我使用require.js,其中一个模块需要另一个模块,但对其导出(它是一个jQuery插件)不感兴趣,即在代码中
define(['jquery', 'jquery.mousewheel', 'fabric'], function ($, something, fabric) {
// ...
}
我对something
不感兴趣。当然,我可以将我不感兴趣的结果的依赖关系移动到数组的末尾,只省略相应的"尾随"我的功能的参数,但为了便于阅读,我想保持它们如图所示。这引出了我的问题......
在函数定义中标记忽略参数的JavaScript习惯用法是什么?
当然我知道我可以使用任何阻止我使用变量的名称:
someMethodWithCallback(1, 2, 3, function (dx, notinterested1, notinterested2, point) {
// ...
});
并且非常惊讶以下工作(至少在Chrome中)(因为undefined is not a keyword):
someMethodWithCallback(1, 2, 3, function (dx, undefined, undefined, point) {
// ...
});
但当然,在函数内部更改undefined
值可能非常容易出错......
要忽略参数值Perl有undef
,StandardML有_
;有这样的JavaScript,至少在#34; folklore"水平?
答案 0 :(得分:5)
我们团队遵循的惯例是Erlang的惯例:在_
之前添加这些变量的名称。实际上,它经常用于jQuery回调:
$.each(someArray, function(_i, el) { ... });
这样你仍然可以看到被忽略的param的含义,但同时也明白它被忽略了。