搜索

首页  >  问答  >  正文

javascript - 一个JS多元运算符的问题

求解console中为什么要这样写,多谢大侠们

过去多啦不再A梦过去多啦不再A梦2709 天前1037

全部回复(2)我来回复

  • 大家讲道理

    大家讲道理2017-07-05 11:10:37

    先说下,我不是搞js的,但我的直觉告诉应该这样理解:

    console.log(f ? (b ? "FizzBuzz" : "Fizz") : (b ? "Buzz" : i))

    所以我觉得没有什么为什么,就是写的人懒,没有考虑过可阅读性。

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-07-05 11:10:37

    你也可以不这么写啊

    for(var i=1;i<=100;i++){
        var f = i%3 == 0,
            b = i%5 == 0;
        if(f){
            if(b){
                console.log("FizzBuzz");
            }else{
                console.log("Fizz");
            }    
        }else{
           if(b){
               console.log("Buzz");
           }else{
               console.log(i);
           }
        }
    }

    回过头来,是不是发现上面写法读起来好像容易点,但是行数有点多~

    回复
    0
  • 取消回复