zoukankan      html  css  js  c++  java
  • js中的if判断十分优美的简洁写法

    本尊混迹猿人类也有5年有余,从最开始的C#到java再到php到至今的python,不能说精通,也算得上是熟悉,对各个语言的语法也算是了解。

    虽然目前在开发web程序,了解一些java知识,但是今天在看到同事写的小程序中的js,使用了一种十分优美的if条件判断,还是令我十分震惊。

    在我这么多年的编程中,if一直是这么写的:

    if () {
        
    }
    

    也一直认为就该这么写,而今天我看到的是这么写:

    function getInfoFromStorageBydid(key, did, success, error) {
      wx.getStorage({
        key: key,
        success: function (res) {
          var data = res.data[did];
          if (data) {
            typeof success === 'function' && success(data);
            wx.hideToast();
          } else {
            typeof error === 'function' && error();
          }
        },
        fail: function () {
          typeof error === 'function' && error();
        }
      });
    }
    重点是这句:typeof success === 'function' && success(data)

     使用&&进行简写,&&前面的表达式为真,则执行后面的表达式。

       经过搜索得知还可使用||进行简写。

       false || alert('false'); true || alert('true'); //output false; 
       用"||"的情况下,第一个条件false,才会执行第二个语句。

       false && alert('false'); true && alert('true'); //output true 
       用"&&"的情况下,第一个条件true,才会执行第二个语句。 

    js经过这么多年的发展,并且随着当前web前后端分离的趋势和小程序的火热,js显得越来越重要,前端工程师的地位似乎要碾压后端工程师。

    是不是该考虑多学学前端知识,转行做前端工程师呢?

  • 相关阅读:
    汇编中的字符串操作指令
    Scoket需要注意的地方
    判断是否为json对象
    offsetTop,offsetWidth,offsetParent
    ASP.net中页面事件的先后顺序
    opengl32.lib、glu32.lib、 glaux.lib、OpenGL32.lib的意思。
    递归中,方法中的变量值被改变的问题。
    中国数字认证网
    JSON中for in的使用
    (网上转载)JavaScript 跑马灯
  • 原文地址:https://www.cnblogs.com/6tian/p/6118797.html
Copyright © 2011-2022 走看看