zoukankan      html  css  js  c++  java
  • JS中三目运算符和if else的区别分析与示例

    本文是通过示例详细分析了JS中三目运算符和if else的区别,是篇非常不错的文章,这里推荐给大家。
     

    今天写了一个图片轮播的小demo,用到了判断

    先试了一下if else,代码如下:
     

    复制代码代码如下:

    if(n >= count-1){
    n =0;
    }else{
    n ++;
    }

    随后代码写完了,准备优化一下代码,将此段改成了三目运算符的写法
     

    复制代码代码如下:

    n = n >= (count-1) ? n=0 : n++

    结果完全不同

    随后研究了一下这两者的区别,总结为一句话:三目运算有返回值,if else没有返回值

    做了如下测试:
     

    复制代码代码如下:

    var n=1;
     if(n>1){
        n=0;
    }else{
        n++;
    }
    console.log(n);

    输出结果:2


    三目运算如下:
     

    复制代码代码如下:

    var n=1;
    n = n>1?0 : n++;
    console.log(n);
    输出结果为:1

    插入一段其他内容:++n和n++的区别:简单地说,都是 n 自加1。区别是,n++是执行完后面的语句才加1;而++n 就先做 n+1才执行后面的语句

    那么对于++n呢

    if else 语句

    复制代码代码如下:

    var n=1;
     if(n>1){
        n=0;
    }else{
        ++n;
    }
    console.log(n);
    输出结果:2

    三目运算结果
     

    复制代码代码如下:

    var n=1;
    n = n>1?0 : ++n; 
    console.log(n); 输出结果为:2

     
    可以看出if else和三目运算的区别了吧~~~
     
    n++和++n在此验证中,没有任何区别,因为if else都是计算结果之后的,不会返回n,没有任何返回值
     
    但是对于三目运算,n++返回的n值为n本身,++n返回的n值为n+1之后的结果

    读了本文,小伙伴们是不是对js中的三目运算符和if else有了新的认识呢。

  • 相关阅读:
    LeetCode数字之和总结
    排序类总结
    web sockect的练习
    RNA速率scVelo
    创建Numpy数组的不同方式
    numpy的课程学习二
    scrapy的cmdline命令和其文件写入乱码问题
    scrapy选择器
    python数据分析的numpy学习笔记
    Numpy的学习笔记一
  • 原文地址:https://www.cnblogs.com/susanws/p/5454160.html
Copyright © 2011-2022 走看看