论坛首页 Web前端技术论坛

核心只要两行即可实现添加或移除className

浏览 10753 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (8)
作者 正文
   发表时间:2011-04-29  
enix2212 写道
为的是把10行代码搞成一行 现在又要搞回去? 我写样式肯定不会敲回车 如果有需要 你自行修改 再说 我也不相信你每次写样式都会敲回车吧 那这些判断 有何意义


你这种缩短代码的方式是用逻辑运算符和三元运算符来代替条件判断,最后是一行长过别人三行,效率还不一定高,意义大么?你发个自己写的东西在这里说有多短多短,结果是为你自己的需求量身定做的,别人要用还要自己进行逻辑上的完善,再短又有何意义?
0 请登录后投票
   发表时间:2011-04-30  
这个五一一睡醒,看到这个讨论,我就笑了
代码就算随心随意,开心就好
0 请登录后投票
   发表时间:2011-04-30   最后修改:2011-04-30
jamesmos 写道
enix2212 写道
为的是把10行代码搞成一行 现在又要搞回去? 我写样式肯定不会敲回车 如果有需要 你自行修改 再说 我也不相信你每次写样式都会敲回车吧 那这些判断 有何意义


你这种缩短代码的方式是用逻辑运算符和三元运算符来代替条件判断,最后是一行长过别人三行,效率还不一定高,意义大么?你发个自己写的东西在这里说有多短多短,结果是为你自己的需求量身定做的,别人要用还要自己进行逻辑上的完善,再短又有何意义?



三元没有 if else 效率高??
看来你不懂js
为自己量身定做? 这个和开源就要免费的论调基本一致吧 再说就算我是为自己量身定做的 而且我也说了 这个语言很强大 很灵活 多行的可以一行完成 我没有强烈要求你一行两行  我有没要求大家用我的 你何苦纠缠不清 效率不高你可以弄个一行高的 共同学习进步嘛 客户端代码短没有意义吗? 起码占用的字节少了吧

0 请登录后投票
   发表时间:2011-04-30  
enix2212 写道
jamesmos 写道
enix2212 写道
为的是把10行代码搞成一行 现在又要搞回去? 我写样式肯定不会敲回车 如果有需要 你自行修改 再说 我也不相信你每次写样式都会敲回车吧 那这些判断 有何意义


你这种缩短代码的方式是用逻辑运算符和三元运算符来代替条件判断,最后是一行长过别人三行,效率还不一定高,意义大么?你发个自己写的东西在这里说有多短多短,结果是为你自己的需求量身定做的,别人要用还要自己进行逻辑上的完善,再短又有何意义?



三元没有 if else 效率高??
看来你不懂js
为自己量身定做? 这个和开源就要免费的论调基本一致吧 再说就算我是为自己量身定做的 而且我也说了 这个语言很强大 很灵活 多行的可以一行完成 我没有强烈要求你一行两行  我有没要求大家用我的 你何苦纠缠不清 效率不高你可以弄个一行高的 共同学习进步嘛 客户端代码短没有意义吗? 起码占用的字节少了吧




关于三元运算符与if条件判断谁效率高这个问题,我真心希望你的自信不是来自于教科书。
前几天有个帖子在讨论StringBuffer的效率问题,回帖里就没几个正确的,还有人去把教科书上的分析过程复制了一段贴上去,结果呢?那个问题我是之前亲自试验过的,所以很干脆的就回帖了。今天这个问题我之前确实是没做个测试,但我知道在php里,三元运算符效率是没有if else条件判断高的,另一方面是凭我个人的直觉。我也是个认真的人,看到你这么自信满满的,我就想会不会是我错了,于是粗略的写了个测试,最后发现这个问题是真没有定论,在不同浏览器下,甚至在不同的测试样本之下,结果都是不一样的。我把测试页面传到网上了,你有兴趣可以去试试看,也算是个共同学习的过程吧。

地址:http://home.ustc.edu.cn/~kkjames/test/testCh.html
0 请登录后投票
   发表时间:2011-04-30  
客户端代码的短是有意义,但在脚本压缩和客户端缓存的作用下,这种程度的缩短(十行缩短到五行,结果只节省了5个字节)所产生的意义是非常有限的。当然,你能够根据自己的需求牺牲一些通用性而进一步缩短,对你自己来说这是完全值得肯定的(这也是我所说的量身定做的意思)。而如果你在应对自己的需求进行缩减处理的过程中有很巧妙的地方,和大家分享出来也是很有价值的行为。
0 请登录后投票
   发表时间:2011-04-30   最后修改:2011-04-30
其实 if else  三元 逻辑运算的本质都是在求布尔的运算 只要得到布尔值就能进行运算了 所以 简化if else 都是有意义的
我这个大的表达式不止使用了 三元 逻辑 还有连续运算 尤其这个连续运算 我觉得这个才是这个出彩的地方 而且 声明变量 赋值 连续运算可以一行完成 这个语言真的是很棒

而且看过jquery源码 有时候会拍桌 擦 代码还能这样写 有点这种意思

而且 没有更充分的证据 我能相信的肯定是ncz或者高性能建站


而且我不认为 这个是对自己量身定做 试想谁会写class的时候去敲回车 就算有可能 但这个肯定不是所提倡的编码方式 我们没有为别人的错误买单 多开发99%的代码 而且我说过 我不是在写类库 没必要考虑所有人的感受
0 请登录后投票
   发表时间:2011-04-30  
enix2212 写道
其实 if else  三元 逻辑运算的本质都是在求布尔的运算 只要得到布尔值就能进行运算了 所以 简化if else 都是有意义的
我这个大的表达式不止使用了 三元 逻辑 还有连续运算 尤其这个连续运算 我觉得这个才是这个出彩的地方 而且 声明变量 赋值 连续运算可以一行完成 这个语言真的是很棒

而且看过jquery源码 有时候会拍桌 擦 代码还能这样写 有点这种意思

而且 没有更充分的证据 我能相信的肯定是ncz或者高性能建站


而且我不认为 这个是对自己量身定做 试想谁会写class的时候去敲回车 就算有可能 但这个肯定不是所提倡的编码方式 我们没有为别人的错误买单 多开发99%的代码 而且我说过 我不是在写类库 没必要考虑所有人的感受


代码不一定是手工写出来的。比如使用模板编译出的html文档,完全有可能出现各种你觉得不合理的现象。当然,你觉得到那时候出现问题再来改,那也是可以的;但如果这个工作不是由你亲自来做了呢?你的接手人就不一定能立马想到问题出在哪里。
0 请登录后投票
   发表时间:2011-05-01  
三元运算和if/else生成的语法树是一样的,这个没啥好讨论的吧……
jQuery在前端向来是被认为可读性极差、可用性极高的库,从使用的角度来说jQuery是优秀的,但其兼容性也是无上的,就好比这个className的问题,jQuery在升级到1.5的时候,还特地把\t作为分隔符考虑了进去
但是jQuery作为源码学习是不合适的,远不如prototype/underscore/Ext/tangram/kissy/qwrap等库,所谓的“代码竟然能这样写”很多时候其实是bad smell而已
0 请登录后投票
   发表时间:2011-05-01  
作为万年潜水员,我忍不住问问,你写这个方法的同时有考虑到了可读性了吗,可能是我以前没看过用三元运算符代理if/else的写法,正则表达式什么的都没什么,关键是这个三元运算符到底什么意思我看了半天,这样子做似乎也并没有减少多少代码量,还增加了理解难度。
0 请登录后投票
   发表时间:2011-05-01  
jamesmos 写道
enix2212 写道
为的是把10行代码搞成一行 现在又要搞回去? 我写样式肯定不会敲回车 如果有需要 你自行修改 再说 我也不相信你每次写样式都会敲回车吧 那这些判断 有何意义


你这种缩短代码的方式是用逻辑运算符和三元运算符来代替条件判断,最后是一行长过别人三行,效率还不一定高,意义大么?你发个自己写的东西在这里说有多短多短,结果是为你自己的需求量身定做的,别人要用还要自己进行逻辑上的完善,再短又有何意义?

hello world 写道
对啊,我也这样认为
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics