这一篇是记录一下我在学习Flutter的过程中,学习到的一些关于Dart语言的内容,太过基础的东西就不记录了,只记录一些我觉得有用的东西。
If null operator ??
Dart里有个特别的运算符,我也不知道该怎么翻译,记录这个运算符的原因是我觉得这个运算符非常的方便,通常我们在赋值的时候,为了避免空值都会先做判断,比如在javascript中会这样做
1 | // 若newList不为空,赋值给list,否则赋值空数组给list |
或者使用条件运算符
1 | // 若newList不为空,赋值给list,否则赋值空数组给list |
但是在dart里,就可以用这个if null来很方便的来达成目的
1 | // 若newList不为空,赋值给list,否则赋值空数组给list |
这个运算符还有其他的用法
1 | // 若list为null,赋值newList给list |
虽然这个运算符都可以用其他的方式代替,但是有了这个运算符的确在编程的时候方便了很多,代码也更简洁清晰,希望typescript也能用上。
(Update) 写完这个不久就看到了ES2020将会更新这个功能,简直赞,还有其他很有用的新特性,比如Optional chaining.参考链接
级联操作符(..)
用于赋值
1 | obj.attrOne = ''; |
等于
1 | obj |
用于调用方法
1 | var func1 = func2(); |
等于
1 | var func1 = func2() |