art"><code>var string = 'Pub';
string.split('');                       // ['P', 'u', 'b']

string.codeUnits.map((unit) {
  return new String.fromCharCode(unit);
}).toList();                            // ['P', 'u', 'b']
</code></pre>
<p>Splitting happens at UTF-16 code unit boundaries,
and not at rune boundaries:</p>
<pre class="language-dart"><code>// String made up of two code units, but one rune.
string = '\u{1D11E}';
string.split('').length;                 // 2 surrogate values
</code></pre>
<p>To get 