js中的if判断十分优美的简洁写法

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

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

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

if () {
    
}

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

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)

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

   通过搜索得知还可以使用||进行简写。编程

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

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

js通过这么多年的发展,而且随着当前web先后端分离的趋势和小程序的火热,js显得愈来愈重要,前端工程师的地位彷佛要碾压后端工程师。后端

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

相关文章
相关标签/搜索