谷歌开发了 dart 语言,目前已经可以用作 web 端 和 移动端(flutter),在谷歌的展望中以后还可以做桌面端,大一统啊。 此处记录下一些基本又重要,自己会选择性忽视和经常要用的点。
特点:
- 基于类,面向对象,类可以继承,但只可以单继承
- 接口实现(多态),抽象类,泛型
- 单线程(拥有异步处理)
- 动态类型(类似
js,拥有var) 或 类型注解(使用 静态类型关键字 来声明变量,以获得严格的类型检查)。我们可以这样编写我们的代码,在函数的入口,即定义函数的参数时使用 类型注解;而在函数内部,当类型并不重要时使用 动态类型。
基本类型相关
double是 64 位String是 UTF16
StringBuffer
1 | main() { |
List
常用方法使用 js 作为比较。
foreach类似js的foreach
如果想遍历时获取index, 转为{'index': item}的对象遍历, 完成之后再转为 list :1
2
3list.asMap().forEach((index, item) {
// do something...
}).toList()map类似js的mapwhere类似js的filter: 删选符合要求的元素any类似js的every: 检测列表中是否所有元素都满足要求
Set
两个特点:没有顺序,唯一元素
1 | Set english = new Set(); |
Map
1 | Map joe = { |
setTimeout
1 | import 'dart:async'; |
iterator 与 Iterable
iterator:
1 | var names = ['Foo', 'Bar', 'Qux']; |
Iterable:
1 | var numbers = new Iterable.generate(5, (i) => i); |


