Javascript没有传递所有参数

Pau*_*l L 6 javascript

是否可以调用Javascript函数而不提供所有参数?

我遇到一行代码没有多大意义,除非我假设在Javascript中提供所有参数都不是必需的?

错过的参数是一个布尔值,所以我可以进一步假设Javascript中未定义的布尔值等于'false'吗?

Nic*_*ver 11

是的,其他参数只是undefined如果它们没有传入:)

例如:

function myFunc(param1, param2) {
  alert(param1);
  alert(param2);
}
Run Code Online (Sandbox Code Playgroud)

这是一个有效的电话:

myFunc("string"); //alerts "string" then undefined
Run Code Online (Sandbox Code Playgroud)

试一试吧.如果你的问题中的检查是类似的if(!param2),它将评估true,因为undefined ~= false在大多数情况下.值得注意的是,这不仅是可以接受的,而且非常普遍,几乎每个库或框架都只需要将一些参数传递到大多数函数中.