如何在JavaScript中编写内联IF语句

如何在JavaScript中编写内联IF语句

条件语句是任何编程语言中最重要和基本的概念。if-else语句允许我们有条件地执行任何代码块。我们可以在大括号中定义if语句的条件,如果条件为真,则执行if块的代码;否则,执行else块的代码。

在这里,我们演示了JavaScript中if-else语句的工作原理。

if (condition) {

   // code to execute when the condition becomes true
} else {

   // code to execute when the condition becomes false
}

从上面的代码中,用户可以学习到if-else语句的语法。

如果我告诉你可以将上面的五行代码写成一行,你会怎么说?是的,你可以使用内联if语句来实现。

语法

用户可以按照以下语法在JavaScript中使用内联if语句。

Condition? code - block - 1 : code - block - 2

在上述语法中,条件是一个表达式。当条件表达式求值为true时,将执行代码块1;否则将执行代码块2。

如果将行内if语句与if-else语句进行比较,代码块1是if语句的代码,代码块2是else语句的代码。

示例

在下面的示例中,我们将学习行内if语句的基本用法。我们使用条件’10=10’,如果条件求值为true,将打印’10等于10’;否则,将打印’10不等于10’。

在输出中,用户可以观察到始终打印’10等于10’,因为条件总是为true。

<html>
<body>
   <h2>Using the <i> inline if statement </i> in JavaScript</h2>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      let result = 10 === 10 ? "10 is equal to 10." : "10 is not equal to 10.";
      output.innerHTML += "The value of the result variable: " + result;
   </script>
</body>
</html>

示例

在下面的示例中,我们创建了一个数字数组。还创建了func1()和func2()函数,它们根据传入的值打印不同的消息。

我们使用了forEach()方法循环遍历数组。在forEach()方法的回调函数中,我们检查如果数字能被10整除,则调用func1()函数;否则,调用func2()函数。

<html>
<body>
   <h2>Using the <i> inline if statement </i> in JavaScript</h2>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      function func1(value) { 
         output.innerHTML += "The func1() is executed for the value " + value + "<br>";
      }
      function func2(value) {
         output.innerHTML += "The func2() is executed for the value " + value + "<br>";
      }
      let numbers = [10, 30, 43, 50, 64, 76, 87];
      numbers.forEach((num) => {
         num % 10 == 0 ? func1(num) : func2(num);
      })
   </script>
</body>
</html>

示例

在下面的示例中,我们使用if-else语句和内联if语句检查年份是否为闰年。checkYear()函数使用if-else语句来确保传递的年份参数是否为闰年。

在checkInlineYear()函数中,我们实现了与checkYear()函数相同的逻辑,但我们将if-else语句转换为内联if语句。用户可以看到我们是如何将九行代码写在一行代码中的。

用户可以观察到两个函数对于任何年份值都会产生相同的输出。

<html>
<body>
   <h3>Using inline if statement to check whether year is leap year in JavaScript</h3>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      function checkYear(year) {

         // if the year is divisible by 400, it is a leap year.
         if (year % 400 == 0) {
            return true;

            // if the year is divisible by 400 and by 100, it is not a leap year.
         } else if (year % 100 == 0) {
            return false;

            // if the year is divisible by 400, not divisible by 100, and divisible by 4, it is a leap year.
         } else if (year % 4 == 0) {
            return true;
         } else {
            return false;
         }
      }
      function checkInlineYear(year) {
         return year % 400 == 0 ? true : year % 100 == 0 ? false : year % 4 == 0 ? true : false;
      }
      output.innerHTML += "Outputs using the checkYear() function. <br> ";
      output.innerHTML += "The 2023 is leap year :- " + checkYear(2020) + "<br>";
      output.innerHTML += "The 3000 is leap year :- " + checkYear(3000) + "<br>";
      output.innerHTML += "<br>";
      output.innerHTML += "Outputs using the checkInlineYear() function. <br> ";
      output.innerHTML += "The 2023 is leap year :- " + checkInlineYear(2020) + "<br>";
      output.innerHTML += "The 3000 is leap year :- " + checkInlineYear(3000) + "<br>";
   </script>
</body>
</html>

用户学会了在JavaScript中使用内联if语句。我们可以观察到,内联if语句使代码更清晰、更易读,用相同逻辑写更少的代码总是好的。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程