Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使我的函数直到以后才传递第二个参数?_Javascript - Fatal编程技术网

Javascript 如何使我的函数直到以后才传递第二个参数?

Javascript 如何使我的函数直到以后才传递第二个参数?,javascript,Javascript,我正在用语音识别软件编写一个小脚本 我对它进行了设置,这样当语音命令识别一个命令时,它就会启动一个功能 该函数接受两个参数,state和tag 例如,你可以说 “{state}门{tag} 示例:“{Open}门{a}” 状态和标记可以是任何内容。我的函数会检查它是否为字符串、是否为单数字母、是否与数据库匹配等,最后如果所有内容都通过,则会将数据发送到表单。重点是,这些参数必须通过的第一个“障碍”是: if (typeof tag === "string" && tag.leng

我正在用语音识别软件编写一个小脚本

我对它进行了设置,这样当语音命令识别一个命令时,它就会启动一个功能

该函数接受两个参数,state和tag

例如,你可以说

“{state}门{tag}

示例:“{Open}门{a}”

状态和标记可以是任何内容。我的函数会检查它是否为字符串、是否为单数字母、是否与数据库匹配等,最后如果所有内容都通过,则会将数据发送到表单。重点是,这些参数必须通过的第一个“障碍”是:

if (typeof tag === "string" && tag.length === 1){ 

do stuff 

} else {
console.log(`Parameter ${tag} is either not a word, or not a singular 
letter.`);
} 
它只使用一个参数/参数aka tag就可以很好地工作,但如果使用两个参数,它也会传递“state”?“aka,我的else控制台日志被触发,并说“Open不是一个单词…”等

稍后在我的代码中,状态在它检查的地方变得相关,例如

 if (state === open || state === closed) {}
我的观点是,我如何让它在需要时忽略该参数?有没有办法让它成为可选的?让它只首先传递“tag”参数/参数,然后在需要时传递另一个


谢谢。

您可能有一个带有两个参数的函数,其中一个参数是可选的。下面是一个示例:

功能测试(p1,p2=“可选”){
控制台日志(p1);
如果(p2==‘可选’){
console.log(“…正在返回\n”);
返回;
}
其他的
{
控制台日志(p2);
}
}
测试(“参数1”);

test(“param1”、“param2”);
如果在
console.log()之后进入
else
,您似乎只想退出函数。您可能应该在日志之后返回。请提供完整的代码