Я хочу, чтобы мой пользователь написал простой расчет в поле, а затем вычислил, что они написали в событии onBlur()
. Скажем, они пишут 5*(3+5)-10
, а затем, когда они меняют фокус, я хочу рассчитать результат и написать обратно в том же текстовом поле. Я хорошо знаю, как обрабатывать все события, я просто хочу знать, знаете ли вы о существовании скрипта, который может вычислить эти простые символические вычисления (мне нужно только */- +
). Я googled, но я ничего не нашел ... Спасибо!Javascript - Выполнить расчет пользователя
ответ
Вы можете использовать eval
, но вы должны дезинфицировать вход первого только разрешения разрешенных символов.
if (/[^0-9.*/+()-]/.test(expr)) {
alert("illegal expression");
} else {
var res = eval(expr);
}
тест будет гарантировать, что пользователь не может попытаться подорвать eval
, чтобы сделать его запустить произвольный, поставляемом JavaScript код.
полезно поместить eval в try/catch, чтобы предотвратить ошибки в выражении –
Выполняет ли eval ваши потребности?
> eval('5*(3+5)-10')
30
Да, я думаю, что это то, что я искал! Благодаря! –
Безопасное абсолютно не безопасно, но вы можете использовать eval()
функцию: http://jsfiddle.net/UQTY2/112/
В качестве отправной точки, это может помочь:
var calcApp={};
calcApp.isValidExpression=function(expression){
return expression.match(/[^0-9+-\\*\\/\(\)]/)==null;
};
calcApp.calculate=function(expression){
val=0;
if(calcApp.isValidExpression(expression)){
val=eval(expression);
}
return val;
};
$(".calculator").blur(function(e){
$(".result").html(calcApp.calculate($(e.target).val()));
});
Нет errorchecking для falsy выражений -подобных "1 + *" включен.
, нет необходимости выходить (большинство) символов внутри символьного диапазона '[]'. Поступая таким образом, вы неправильно разрешаете символ '\'. – Alnitak
- 1. Как я могу выполнить расчет в Javascript
- 2. javascript массив вход пользователя и средний расчет
- 3. эффективный способ выполнить расчет
- 4. datepicker - расчет возраста пользователя
- 5. Параллельное пользователя Расчет
- 6. Расчет значений пользователя C#
- 7. Расчет JavaScript
- 8. Расчет javascript
- 9. Расчет пользователя маслобойки с Postgresql
- 10. Выполнить расчет в MVC viewmodel
- 11. Выполнить функцию javascript после действия Struts сделать некоторый расчет
- 12. JavaScript Расчет неправильный
- 13. расчет среднего пользователя, введенные-номер
- 14. Расчет массива в JavaScript
- 15. Javascript/jQuery - Расчет стоимости
- 16. расчет Javascript с muliplying
- 17. Javascript расчет даты
- 18. Расчет Javascript не работает.
- 19. Расчет в JavaScript
- 20. Javascript: неправильный расчет Дата
- 21. Javascript всего Расчет цены
- 22. Jquery/JavaScript Расчет времени
- 23. Простой расчет javascript
- 24. расчет javascript не работает
- 25. расчет php и javascript
- 26. Расчет Javascript - если заявление
- 27. Расчет формулы Javascript
- 28. JavaScript Дата Длина Расчет
- 29. расчет javascript не работает
- 30. Расчет детерминанта javascript
Можете ли вы опубликовать некоторые коды, что вы пробовали до сих пор – polin