Parsing Expressions w/o recursion

by dimskraft

HTML

<textarea rows="4" cols="50" id="expression">
</textarea>
<br/>
=<div id="result">12</div>

JavaScript

function tokenize(s) {

	var position = 0;
	var ans = [];
  var number = '';

	while(position<s.length) {
    var nextchar = s.substring(position, position+1).trim();
    if( '0123456789'.includes(nextchar) ) {
       number += nextchar;
    }
    else {
    	if(number.length>0) {
				ans.push( parseInt(number) );
        number = '';
      }
      if( nextchar.length > 0 ) {
         ans.push(nextchar);
      }
    }
    position++;
  }
  if(number.length>0) {
    ans.push( parseInt(number) );
    number = '';
  }

	return ans;

}

function compute(expression) {

	
	var pos = 0;
  var level = 0;
  
  

}

$('#expression').on('input propertychange paste', function() {
    $('#result').text(compute(tokenize($(this).val())));
});