Dart在线运行

版本:
运行结果
教程手册
代码仓库
极速运行
终端运行
图形+终端

                        
显示目录

for循环



for 循环

使用标准 for 语句进行迭代操作。 如:

var message = StringBuffer('Dart is fun');
for (var i = 0; i < 5; i++) {
  message.write('!');
}

为避免 JavaScript 中常见的陷阱,闭包在 Dart 的 for 循环中会捕获循环的 index 索引值。 请思考示例:

var callbacks = [];
for (var i = 0; i < 2; i++) {
  callbacks.add(() => print(i));
}
callbacks.forEach((c) => c());

,输出的和期望一样是 0 和 1。 但示例中的代码在 JavaScript 中会连续输出两个 2 。

I用forEach() 方法迭代一个实现了 Iterable 接口的对象, , 如果不用当前计数值, 使用 forEach() 是非常棒的选择;

candidates.forEach((candidate) => candidate.interview());

for-in 进行迭代操作 iteration,实现了 Iterable 的类(如, List 和 Set)也同样支持使用 :

var collection = [0, 1, 2];
for (var x in collection) {
  print(x); // 0 1 2
}
由JSRUN为你提供的Dart在线运行、在线编译工具
        JSRUN提供的Dart 在线运行,Dart 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。