本尊混跡猿人類也有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顯得越來越重要,前端工程師的地位似乎要碾壓后端工程師。
是不是該考慮多學學前端知識,轉行做前端工程師呢?