首页 新闻 会员 周边 捐助

jquery中if语句写法问题

0
[待解决问题]

     上次在某网站上从头开始学jquery时看到了一种与if(){}else{}有相同效果的写法,虽然之前也见过,但一直没有使用过。

      还是来举个例子吧,$num的值只有01这两个值。

第一种写法(我平时都是这样写)

if($num=="1"){
        alert(1);
}else{
        alert(0);    
};

第二种写法:

$num=="1"?alert(1):alert(0);

      现在问题来了,两种写法都能实现效果,到底哪种写法更好呢?

繁华已逝的主页 繁华已逝 | 菜鸟二级 | 园豆:353
提问于:2015-01-11 11:15
< >
分享
所有回答(14)
0

浏览器解析后的效果是一样的,第一种方便阅读,第二种方便编写!

刘宏玺 | 园豆:14020 (专家六级) | 2015-01-11 13:43
0

这跟jquery无关, 是js...., 跟编程语言有关, c\ .net  java等等等等等等等等等等等等等等都支持第二种写法。  方便快捷。 提高开发效率.  if else能用。 if else if else结构不好用。  它叫三目运算符

问天何必 | 园豆:3311 (老鸟四级) | 2015-01-11 14:24
0

三目运算符。。。。。看看书就知道了

羽商宫 | 园豆:2490 (老鸟四级) | 2015-01-11 15:37
0

用第一种写法,别人看的懂一些,当然第二种你要懂,因为很多JS高手,喜欢用一些蛋疼的语法糖来恶心所有人。

Chobites | 园豆:135 (初学一级) | 2015-01-11 16:30
0

如果是变量赋值,我习惯用三目运算,如果是函数,习惯用if。

至于性能方面,你可以使用不同的浏览器测试。(http://jsperf.com/ternary-vs-if-statement/3

Vivian软陶公仔 | 园豆:284 (菜鸟二级) | 2015-01-12 09:51
0

都一样

骑着蜗牛耍流氓 | 园豆:135 (初学一级) | 2015-01-12 10:12
0

如果考虑扩展的话用第一种,但第二种节省代码!

snowsolf | 园豆:233 (菜鸟二级) | 2015-01-12 10:23
0

从规范上面讲,第一种在产品中使用比较多,因为要考虑维护和升级,要方便阅读;从代码简洁上讲,而且语句不长的情况下,使用第二种,一般项目中推荐使用,快速开发。

renzaijianghu | 园豆:258 (菜鸟二级) | 2015-02-03 14:53
0

简单的就用三目  复杂的就用if  ,三目写复杂了 可能会太乱   项目中还是使用if吧

peerless_she | 园豆:202 (菜鸟二级) | 2015-02-05 09:24
0

 这个问题和jQuery没有关系,if else 语句比较易于理解,代码的易读性比较高。但是一般我们不建议嵌套太多的if else。另外一种写法是三目运算符。

Elissa.Cool | 园豆:205 (菜鸟二级) | 2015-03-10 20:35
0

这个叫三元表达式,在java c#里都有的  ?前面是一个表达式或一个值,值为真或假,?后面是两个输出答案,:前面是如果表达式为真输出的内容,:后面是如果表达式为假输出的内容

繁复 | 园豆:207 (菜鸟二级) | 2015-04-27 13:04
0

没有更好,只有更适合,因为现在的JS 基本上在上线前都会压缩掉,它会自动帮你转换的,所以,这不是你应该担心的事。

田想兵 | 园豆:244 (菜鸟二级) | 2015-05-11 17:33
0

这叫三目运算符,同前面所说的,没有最好只有最合适,三目运算符个人觉得更适合一些比较简单的if操作,比如说常见的判断值是否为空什么的,复杂一些的还是推荐用if-else

Kirlian | 园豆:208 (菜鸟二级) | 2015-06-24 17:27
0

如果是简单的建议用三目  如果特别复杂用字典啊

我是糖糖 | 园豆:446 (菜鸟二级) | 2015-11-05 16:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册