JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdn.rawgit.com/creatorrr/web-streams-polyfill/master/dist/polyfill.min.js"></script>
<script src="https://cdn.rawgit.com/jimmywarting/Screw-FileReader/master/index.js"></script>
<script src="https://rawgit.com/jimmywarting/web-byline/master/index.js"></script>
<script src="https://cdn.rawgit.com/creatorrr/web-streams-polyfill/master/dist/polyfill.min.js"></script>

<p>Try out a own csv:</p>
<input id="$input" type="file">

<p>Example:</p>

Babel + JSX

function example (file){
  var i = 0
  var decoder = new TextDecoder
  var stdout = new WritableStream({
    write(chunk) {
      chunk = decoder.decode(chunk)
      document.body.innerHTML += ('<br>chunk[' + (i++) + ']: ' + chunk)
    }
  })

  file.stream().pipeThrough(byLine()).pipeTo(stdout)
}

var csv = 
`apple,1,$1.00
banana,4,$0.20
orange,3,$0.79`
example(new Blob([csv]))
setTimeout(()=>$input.onchange=()=>example($input.files[0]))