如何测试 JavaScript 中是否为函数提供了参数?

javascriptweb developmentfront end technology

测试 JavaScript 中是否为函数提供了参数是编写有效代码的重要部分。它允许您确保传递给函数的参数有效且格式正确,可在函数中使用。在本文中,我们将讨论用于测试 JavaScript 中是否为函数提供了参数的不同方法。

让我们了解术语"参数"。参数是函数定义中的命名实体,用于指定函数可以接受的参数。它充当函数内的变量,其值在调用函数时传递给函数。

JavaScript 中参数的默认值未定义。这意味着,如果您不向函数提供任何参数,则函数的参数默认将具有未定义的值。

在 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",例如 if (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 浏览器会显示脚本中提到的参数类型,然后将其传递给由运行脚本时触发的事件激活的函数。

示例

让我们看下面的示例,其中我们检查是否使用了参数。我们调用函数,传递未定义的值,并将它们视为参数的值。

<!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>

当脚本执行时,触发事件,检查条件,并显示参数存在与否的值。


相关文章