如何在 JavaScript 中测试函数是否接收了参数?
在 JavaScript 中测试函数是否接收了参数是编写有效代码的重要部分。它允许您确保传递给函数的参数有效,并且格式正确,以便在函数内部使用。在本文中,我们将讨论在 JavaScript 中测试函数是否接收了参数的不同方法。
让我们了解一下“参数”这个术语。“参数”是在函数定义中命名的实体,它指定函数可以接受的参数。它在函数内部充当变量,并在函数被调用时将值传递给函数。
JavaScript 中参数的默认值为 undefined。这意味着如果未向函数提供任何参数,则函数的参数默认将具有 undefined 值。
在 JavaScript 中使用严格不等 (! ==)
JavaScript 中的严格不等 (!==) 是一种比较运算符,仅当两个操作数的值不相等且类型相同才返回 true。与不等运算符相反,严格不等运算符始终将不同类型的操作数视为不同的。
语法
以下是严格不等 (!==) 的语法
x! == y
示例
在以下示例中,我们使用严格不等 (! ==) 来检查函数是否接收了参数。
<!DOCTYPE html> <html> <body> <script> function checkPara(para) { if (para !== undefined) { return para; } } document.write(checkPara(23)+"<br>"); document.write(checkPara()); </script> </body> </html>
当脚本执行时,它将在 Web 浏览器上生成包含两个值的输出,该输出由执行检查参数是否提供并返回值的脚本触发的事件触发。
示例
考虑以下示例,我们使用typeof 运算符(检查变量、对象或字面量的类型)来检查参数是否不等于字符串“undefined”,例如(typeof param!== "undefined")。如果它匹配条件,则参数将传递给函数。
<!DOCTYPE html> <html> <body> <script> function checkPara(para) { if (typeof para !== 'undefined') { return para; } } document.write(typeof undefined +"<br>"); document.write(typeof (() => {})+"<br>"); document.write(typeof null +"<br>"); document.write(typeof [] +"<br>"); document.write(typeof '' +"<br>"); document.write(typeof 0 +"<br>"); </script> </body> </html>
运行上述脚本后,Web 浏览器将显示脚本中提到的参数类型,然后将它们传递给由运行脚本触发的事件激活的函数。
示例
让我们看一下下面的示例,我们检查参数是否被使用。我们调用函数,传递 undefined,并将其视为参数的值。
<!DOCTYPE html> <html> <body> <script> function paratest(...test) { if (test.length) { return `exists`; } else { return `not exists`; } } document.write(paratest(123)+"<br>"); document.write(paratest(undefined)+"<br>"); document.write(paratest()+"<br>"); </script> </body> </html>
当脚本执行时,事件被触发,检查条件,并显示参数是否存在的值。
广告