【JavaScript】三元运算要点整理

三元运算,又称为三目运算符,可根据不同的条件来执行不同的操作,相当于简单的if else 语句。基本结构是:

条件?操作1:操作2
  • 如果条件成立,则执行操作1,否则执行操作2。

需要注意的是,在编写过程中,不能出现breakcontinuereturn等关键词,否则编写时会有报错提示

本博文以3个示例对三元运算使用进行介绍,demo代码已经上传,可直接下载使用。

if else 的写法替换

                var test1 = 10;
                if (test1 > 7 && test1 < 11) {
                    test1++;
                } else {
                    test1--;
                }

按照三元运算写法,替换如下:

var test1 = 10;
test1 > 7 && test1 < 11 ? test1++ : test1--;

if 的写法替换

                var test1 = 6;
                if (test1 > 7 && test1 < 11) {
                    test1++;
                }

按照三元运算写法,替换如下:

var test1 = 6;
test1 > 7 && test1 < 11 ? test1++ : void 0;//void 0 \ null \undefined 条件不成立的占位符
  • 这里需要注意:冒号后面必须要写内容,可以用void 0nullundefined作为条件不成立的占位符。

if else多操作的写法替换

                var test1 = 10;
                var test2 = 0;
                if (test1 > 7 && test1 < 11) {
                    test1++;
                    test2++;
                } else {
                    test1--;
                }

按照三元运算写法,替换如下:

var test1 = 6;
var test2 = 0;
test1 > 7 && test1 < 11 ? (test1++, test2++) : test1--;
  • 多语句用括号括起来,中间语句用逗号隔开。

if else多条件的写法替换

如果是多条件,基本的编写结构如下:

条件1?操作1:条件2?操作2:操作3
  • 如果条件1成立,则执行操作2,否则判断条件2,成立则执行操作2,不成立执行操作3。

if else 示例如下:

                var test1 = 5;
                if (test1 > 11) {
                    test1 = 1;
                } else if (test1 > 7) {
                    test1 = 2;
                } else {
                    test1 = 3;
                }

按照三元运算写法,替换如下:

var test1 = 5;
test1 > 11 ? test1 = 1 : test1 > 7 ? test1 = 2 : test1 = 3;
  • 注意,自左向右执行。

所有示例源码

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <title>demo</title>
    <script>
        $(document).ready(function () {
            $("#btn").click(function () {
                //demo1
                var test1 = 10;
                if (test1 > 7 && test1 < 11) {
                    test1++;
                } else {
                    test1--;
                }
                //
                test1 > 7 && test1 < 11 ? test1++ : test1--;

                //demo2
                var test1 = 6;
                if (test1 > 7 && test1 < 11) {
                    test1++;
                }
                //
                test1 > 7 && test1 < 11 ? test1++ : void 0;//void 0 \ null \undefined 条件不成立的占位符


                //demo3
                var test1 = 10;
                var test2 = 0;
                if (test1 > 7 && test1 < 11) {
                    test1++;
                    test2++;
                } else {
                    test1--;
                }
                //
                test1 > 7 && test1 < 11 ? (test1++, test2++) : test1--;


                //demo4
                var test1 = 5;
                if (test1 > 11) {
                    test1 = 1;
                } else if (test1 > 7) {
                    test1 = 2;
                } else {
                    test1 = 3;
                }
                //
                test1 > 11 ? test1 = 1 : test1 > 7 ? test1 = 2 : test1 = 3;
                $("#div1").html(test1);
            });
        });
    </script>
</head>

<body>
    <div id="div1">jQuery AJAX</div>
    <button id="btn">jQuery</button>
</body>

</html>
  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

傻傻虎虎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值