summaryrefslogtreecommitdiffstats
path: root/third_party/webkit/PerformanceTests/six-speed/tests/for-of-object.es6
blob: 55b5fb6dd0ca816541229194300a5e087b85a412 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
var data = {'a': 'b', 'c': 'd'};
data[Symbol.iterator] = function() {
  var array = Object.keys(data),
      nextIndex = 0;

  return {
    next: function() {
       return nextIndex < array.length ?
         {value: data[array[nextIndex++]], done: false} :
         {done: true};
    }
  };
};

function fn() {
  var ret = '';
  for (var value of data) {
    ret += value;
  }
  return ret;
}

assertEqual(fn(), 'bd');
test(fn);