欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOCX文档下载  

    Javascript简写条件语句(推举)_.docx

    • 资源ID:11650895       资源大小:14.80KB        全文页数:10页
    • 资源格式: DOCX        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Javascript简写条件语句(推举)_.docx

    Javascript简写条件语句(推举)_ 下面我就为大家带来一篇Javascript简写条件语句(推举)。我觉得挺不错的,现在就分享给大家,也给大家做个参考。 常常在各处牛人的代码中看到很多简写的条件表达语句,看了一些介绍这方面的文章,觉得3 ways 2 say if这篇文章(l)还不错。在这篇文章中对传统的if.else.、?:、/|三种条件表达的写法的特点及用处进行了总结归纳,简述如下: 1. if.else结构 / Set r to 0 or 1 var r= Math.floor(2*Math.random() / Set a, b and c to "small" if r=0 an else set them to "big" / using three different techniques / Method 1: If else var a; if (r=0)a = "small" else a = "big" / Method 2: Conditional operator var b = r=0 ? "small" : "big" / Method 3: And/or operators var c = r=0 "small" | "big" / Check the values of our variables alert(r+" "+a+" "+b+" "+c); 2. if.else if.else结构 / Set r to 0,1,2 or 3 var r= Math.floor(4*Math.random() / Set a, b and c to "nada","small","big" and "huge" / depending on the value or r using three different techniques / Method 1: If. else if. else var a; if (r=0)a="nada" else if (r=1)a="small" else if (r=2)a="big" else a="huge" / Method 2: Conditional operators var b = r=0 ? "nada" : r=1 ? "small" : r=2 ? "big" : "huge" / Method 3: And/or operators var c = r=0 "nada" | r=1 "small" | r=2 "big" | "huge" / Check the values of our variables alert(r+" "+a+" "+b+" "+c); 3. 执行函数 / Set r to 0,1,2 or 3 var r= Math.floor(4*Math.random() / The global variable x and our four functions var x="" nada=function()x+="Nada! " small=function()x+="Small! " big=function()x+="Big! " huge=function()x+="Huge! " / Call a specific function depending on the value of r / using three different techniques / Method 1: If. else if. else if (r=0)nada() else if (r=1)small() else if (r=2)big() else huge(); / Method 2: Conditional operators r=0 ? nada() : r=1 ? small() : r=2 ? big() : huge(); / Method 3: And/or operators r=0 (nada() | true) /nada()函数不肯定返回true,为了保证后续的规律或|推断不被执行,需要返回true值,下同 | r=1 (small() | true) | r=2 (big() | true) | huge(); / Check the values of our variables alert(r+" "+x); 4. 执行代码 / Set r to 0,1,2 or 3 var r= Math.floor(4*Math.random() / The global variable x var x="" / Executing different code depending on the value of r / using three different techniques / Method 1: If. else if. else if (r=0)x+="Nada! " else if (r=1)x+="Small! " else if (r=2)x+="Big! " else x+="Huge! " / Method 2: Conditional operators r=0 ? function()x+="Nada! "() : r=1 ? function()x+="Small! "() : r=2 ? function()x+="Big! "() : function()x+="Huge! "(); / Method 3: And/or operators r=0 (function()x+="Nada! "() | true) /有人在评论中指出这里的匿名函数是不必需的,在只有一条可执行代码时是这样的,但是假如有多条代码需要执行,匿名函数还是不错的 | r=1 (function()x+="Small! "() | true) | r=2 (function()x+="Big! "() | true) | function()x+="Huge! "(); / Check the values of our variables alert(r+" "+x); 在这篇网文中,的关注重心是代码的简短与否,所以在一般状况下实现同等功能,更倾向于用法?:运算符,而觉得和|的方式要多打几个字母,因而显得比较累赘。在执行函数的状况下,用法传统的if.else更便利。在它的评论中有人提出,让Client端代码更简洁短小作用大过提高一些不起眼的运行效率,这一点从某种程序上来说也是正确的。所以从形式上选取一种更简洁的形式处理条件语句,可能比这些语句本身的运行效率更为重要,何况运行效率还会因UA而异。 在只存在两种条件的推断中,用if.else或?:都是相当直白,而和|的运算方式就稍嫌简单。但是其实只要明白以下两个基本原则,全部问题都会迎刃而解了: 其一、当用规律与和规律或|运算符运算时,方向都是自左向右的,运算到第一个值为false的条件(或可转换为false的值,如null/undefined/0/""/NaN等)时停止,而运算到第一个值为true的条件(或可转换为true的值)时停止;整个条件返回的值是最终检测的条件的值,不肯定只是true/false。 其二、规律与运算符较规律或运算符相比,前者有更高的优先级。 依据第一个原则,r=0和"small"按自左向右的挨次计算,假如r=0为true,则检测"small","small"为非空字符串,故这样c取值为"small";假如r=0为false,则挺直开头规律或|的其次个条件"big"检测,同样的道理,c应当取值为"big"。依据其次个原则,在对上述代码中的变量c的运算过程中,没有必要加括号。 由于用法?:和、|运算符在肯定程序上能起到精简代码的作用,在jQuery这样的库源代码中特别重要。归纳起来,这类运算符主要有两方面的应用,一是赋值或返回值,二是执行代码(暂且这样分类)。 用于赋值的用法在jQuery或其他库中比比皆是,一个经典应用就是为接口实现默认值的功能,我们可以很简单写出这样的代码来,如: var myObj = function(options) var color = options.color | this.defaults.defaults; var backgroundColor = options.backgroundColor | this.defaults.backgroundColor; ; myObj.prototype.defaults = color : "#393939", backgroundColor : "#222" var myIns = new myObj( color : "#80FF80" ); console.log("color:"+myIns.color+", backgroundColor: "+myIns.backgroundColor); 不管用?:还是和|,由于不具备if.else与生俱来的代码块功能(用号包裹),所以它们都仅能执行单行代码,如: (xmlHttpRequest.readyState=4 xmlHttpRequest.status =200) ? alert("Success!"): alert("Failure!"); 所以假如有多条代码需要执行,就应当用匿名函数。如: (xmlHttpRequest.readyState=4 xmlHttpRequest.status =200) ? function()alert("Success!"); var a=100; alert(a);: alert("Failure!"); 在jQuery 1.7.1源代码这两种简写形式太多了,如line 2643就有: / Hook for boolean attributes boolHook = get: function( elem, name ) / Align boolean attributes with corresponding properties / Fall back to attribute presence where some booleans are not supported var attrNode, property = jQuery.prop( elem, name ); return property = true | typeof property != "boolean" ( attrNode = elem.getAttributeNode(name) ) attrNode.nodeValue != false ? name.toLowerCase() : undefined; , set:function() . 看来还得连续学习进行总结。 以上这篇Javascript简写条件语句(推举)就是我分享给大家的全部内容了,盼望能给大家一个参考 .

    注意事项

    本文(Javascript简写条件语句(推举)_.docx)为本站会员(啊飒飒)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开