Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert string equation to number in javascript?

How to convert string equation to number in javascript?

Say I have "100*100" or "100x100" how do I evaluate that and convert to a number?

like image 223
Event_Horizon Avatar asked Jul 08 '26 15:07

Event_Horizon


2 Answers

If you're sure that the string will always be something like "100*100" you could eval() it, although most people will tell you this isn't a good idea on account of the fact that people could pass in malicious code to be eval'd.

eval("100*100");
>> 10000

Otherwise, you'll have to find or write a custom equation parser. In that case, you might want to take a look at the Shunting-yard algorithm, and read up on parsing.


Using split():

var myEquation = "100*100";
var num = myEquation.split("*")[0] * myEquation.split("*")[1];
>> 10000
like image 62
Elliot Bonneville Avatar answered Jul 11 '26 10:07

Elliot Bonneville


This will give you the product whether the string is using * or x:

var str = "100x100";

var tmp_arr = str.split(/[*x]/);
var product = tmp_arr[0]*tmp_arr[1];   // 10000
like image 44
Paul Avatar answered Jul 11 '26 10:07

Paul



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!