有没有一种工具可以帮助我检测到何时传递了javascript函数的参数太少?据我所知,JSLint和JSHint都不提供此功能。
请明确说明一下,如果我这样写:
some_method = function(x,y) {
// ..do stuff
}
some_method(2);
我想警告一下,我可能不得不提出另一个论点。
您无法做到这一点,所有参数始终是可选的,并且可以将无数个参数传递给无参数函数(通过arguments数组)。
但是您可以使用arguments数组手动测试自己的方法。由于您无法在方法签名中反映参数的数量,因此您必须将其分别添加到每个方法中。因此,对于这种特定情况,您将使用:
function test(x, y) {
if (arguments.length !== 2)
{
console.log('error, invalid amount of args');
}
}
test(1); // this will trigger the console.log and type the error.
如果您确实需要参数检查,则可以使用TypeScript之类的工具,其中默认情况下需要参数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句