我有一个庞大的代码库,我的任务是实现其他功能。代码是Node.js - Javascript。
有一个功能,它是这样的:
function checkPeople(first, second) {
if(second) {
//do some things...
}
}
多次调用相同的函数,但通常称为:
checkPeople(first);
...或
checkPeople(first, second);
这取决于所使用的内容。参数" first"无论如何总是发送。
现在我必须为同一个函数添加额外的功能,但使用第三个参数:
function checkPeople(first, second, third) {
if(second) {
//do some things...
}
if(third) {
//do some things
}
}
我想在函数中添加第三个参数,无论函数调用在哪里(大约2次),并检查函数内部参数是否存在。对于参数" second"。
已经完成了这种方法有效吗?
谢谢
答案 0 :(得分:1)
如果在调用函数时传入这样的参数,使用null作为第二个参数,它将不会调用第二个参数。假设这是你想要做的。 checkPeople(first, null, third)
答案 1 :(得分:0)
我将在这里做出一个假设,但由于该功能被称为checkPeople
,我将假设你为每个人做同样的检查(例如:检查每个人,如果他......存在?)
如果是这种情况:
function checkPeople()
{
var people = Array.prototype.slice.call(arguments);
return people.map(function(person) {
return person == 'eric'; // only eric is a person today
});
}
现在,你可以这样做:
var results = checkPerson('eric','peter','james'); // [true, false, false];
var result = checkPerson('eric'); // [true]
var result = checkPerson('james'); // [false]
如果对first
,second
和third
参数进行了不同的检查,那么您确实仍需要执行if (second) { .. }
检查。