我正在使用语音识别软件来编写一个小脚本。
我已对其进行设置,以便在语音命令识别出命令时,它会启动功能。
该函数带有两个参数,状态和标签。
例如,您可以说
“ {state}门{tag}。
示例:“ {{打开}门{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.`);
}
它仅与一个参数/参数(又名tag)完美配合,但对于两个参数/参数,它也传递“状态”?再次,我的else控制台日志被解雇,说出诸如“ Open is not a word ...”之类的内容。
稍后在我的代码中,状态在检查的地方变得很重要
if (state === open || state === closed) {}
我要说的是,如何使它忽略该参数,直到以后需要它为止?有没有办法使它可选?使它仅首先传递“ tag”参数/参数,而在需要时传递另一个参数/参数?
谢谢。
答案 0 :(得分:1)
您可能有一个带有两个参数的函数,其中一个是可选的。这是一个示例:
function test(p1,p2="optional"){
console.log(p1);
if(p2 == 'optional'){
console.log("...returning\n");
return;
}
else
{
console.log(p2);
}
}
test("param1");
test("param1","param2");
在这种情况下,因为param2是可选的,所以第一次仅使用param1调用该函数。第二次使用两个参数调用该函数。