Вопрос по jquery, html, javascript – Как преобразовать строковое уравнение в число в JavaScript?

1

Как преобразовать строковое уравнение в число в JavaScript?

Скажи, что у меня есть "100 * 100" или "100х100"; Как я могу оценить это и преобразовать в число?

Это не домашнее задание, я пытаюсь преобразовать размеры лотов в длинную форму из сокращений непосредственно при вводе пользователем. Я пробовал eval () и parseInt и parseFloat. Event_Horizon
Это домашнее задание? что ты уже испробовал? JohnFx

Ваш Ответ

3   ответа
0

функция parseInt () анализирует строку и возвращает целое число.

        parseInt("100")*parseInt("100") //10000
5

* или жеx:

var str = "100x100";

var tmp_arr = str.split(/[*x]/);
var product = tmp_arr[0]*tmp_arr[1];   // 10000
Это как раз то, что я искал, спасибо. Event_Horizon
jsfiddle.net/jlaceda/hcDra Пример в функции с тестами.
@Event_Horizon Добро пожаловать :)
4

что строка всегда будет выглядеть как «100 * 100» вы могли быeval() хотя большинство людей скажет вам, что это не очень хорошая идея из-за того факта, что люди могут передать вредоносный код для оценки. d.

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

В противном случае вам придется найти или написать собственный анализатор уравнений. В этом случае вы можете взглянуть наАлгоритм маневрового двораи читать дальшеразбор.

С помощьюsplit():

var myEquation = "100*100";
var num = myEquation.split("*")[0] * myEquation.split("*")[1];
>> 10000
Да, я обновлю.
Есть ли способ разделить его на x и числа и умножить только числа? Будет ли разделить работу для этого? Event_Horizon

Похожие вопросы