title: Efficient way to invoke fromCharCode on large data
body: <p>What I have: a string with numbers separated by spaces.</p>
  
  <p>What I want: a string composed of <code>fromCharCode</code> applied to each number in the input.</p>
  
  <pre><code>var str = "72 69 76 76 79" ;
  var arr = str.split(" ") ;
  var num = arr.map(Number) ;
  var txt = num.map(function(value) { return String.fromCharCode(value); }) ;
  return txt.join('') ;
  </code></pre>
  
  <p>This code works, the result is the string <code>HELLO</code>, but in production the length of <code>str</code> will be in the millions so I need the most efficient translation of this.
  (Note: The last assignment row looks a bit weird. It is to get around a quirk in <code>fromCharCode</code> well described by <a href="https://stackoverflow.com/users/157247/t-j-crowder">T.J. Crowder</a> in <a href="https://stackoverflow.com/questions/5566937/javascript-map-array-with-fromcharcode-character-length">this thread</a>.)</p>
  
  <p>I don't see any way around the initial <code>split</code>, but I'm note sure if two consecutive <code>map</code> calls is the way to go. Would it be better to perform <code>Number</code> and <code>fromCharCode</code> in an explicit loop and translate one character at a time? I assume there's some overhead with <code>foreach</code>, but perhaps it's worth it to only run through the data once.</p>
  
  <p>I've seen that <code>fromCharCode</code> accepts comma-separated lists of numbers, but I don't see how to translate my array of integers without introducing more traversing than the code above.</p>
  
  <p>My js knowledge doesn't extend much beyond map and explicit loops. Is there a more modern - or less naive - approach? Preferably I want js vanilla.</p>