玩轉 Flutter 之 Dart-流程控制

玩轉 Flutter 之 Dart-流程控制

Dart 的流程控制語句,其實跟常規的流程控制語句非常像,按照常規使用沒有任何問題,本文只列出其中比較有特點的內容,供大家參考。

  1. if 相關的 boolean
  2. for 循環相關
  3. fall-through 寫法

if 相關的 boolean

拿 JS 舉例,我們經常使用非 0 或 undefined 或 null 的值來判斷真,比如常用的:

if(array.length) console.log('數組非空');

但是 Dart 不同之處在於嚴格限定 if 語句只能判斷 boolean(這當然也包含 else if)。所以使用 Dart 中就不可使用上面的例子,只能使用 boolean 來做判斷:

玩轉 Flutter 之 Dart-流程控制


for 循環相關

首先,請 JSer 們舉手歡呼,面試 Dart 再也不會問你 for 循環內部使用 var 相關的問題了,沒錯,Dart 的 var 是鎖定義域的,不用擔心變量提升(以及閉包的坑)等問題了。非 JSer 們請忽略這段話,繼續下面即可。

同樣還是 JSer 們,forEach 不帶迭代計數器了,就是沒有:

arr.forEach((item, index) => any...)

上面的 index 沒有了哦,注意下。

然後,for in 適合 List 和 Set 不適合 Map,而不是 ES6 中的 for in 更適合對象。for of 沒有。


fall-through

switch 的 case fall-through 寫法:

玩轉 Flutter 之 Dart-流程控制


下篇:函數。


分享到:


相關文章: