if(n>4||n<0){n=0};如果n大于4或者小于0的时候N就等于0,分开写就可以,但是我想写在一行,节省代码,不过这样就不起作用了,哪里写的不对,或者还有更好的写法吗?

解决方案 »

  1.   

    是我看错了,那样写没有问题,我想问的是
     if(n>4){n=0};  if(n<0){n=4}; 这句怎么简写?
      

  2.   

    if(n>4){n=0};  if(n<0){n=4};
    你这句没法简写
      

  3.   

    这句不能简写哦~~~如果是n>4,n<4的话是可以简写的,但你一个是4一个是0就没有办法了
      

  4.   

    这么写
    n=(n>4||n<0)?n:0;
      

  5.   

    不要用||用|,||短路或的话如果n一开始就是小于0的那么n>4已经是false了,
    后面的就不会执行了自然就不可能到n=0
      

  6.   


      这个结果LZ满意吗?
      n=n>4?0:(n<0?4:n);
      

  7.   


      这个结果LZ满意吗?
      n=n>4?0:(n<0?4:n);
      

  8.   

    不能,人家的要求是if(n>4){n=0}; if(n<0){n=4} 这样?后面应该还有一个判断才行
      

  9.   

    n=(n>4||n<0)?n:0; 用双目表达式呀
      

  10.   

    这个貌似和楼主说的不符合
    n>4  n=0
    n<0  n=4
      

  11.   

    这样行不
    var s=n<4&&n>0?n:(n>=4?4:0)