1'use strict'; 2var $at = require('./_string-at')(true); 3 4// 21.1.3.27 String.prototype[@@iterator]() 5require('./_iter-define')(String, 'String', function (iterated) { 6 this._t = String(iterated); // target 7 this._i = 0; // next index 8// 21.1.5.2.1 %StringIteratorPrototype%.next() 9}, function () { 10 var O = this._t; 11 var index = this._i; 12 var point; 13 if (index >= O.length) return { value: undefined, done: true }; 14 point = $at(O, index); 15 this._i += point.length; 16 return { value: point, done: false }; 17}); 18