Безопасно ли использовать javascript eval () для простых вычислений во входных данных?
Я хотел бы позволить пользователю выполнять простые вычисления при вводе текста, чтобы при наборе 2 * 5 получилось 10. Я 'm заменяет все, кроме цифр, на пустую строку, а затем производит вычисления с помощью eval (). Это кажется проще и, вероятно, быстрее, чем анализировать его вручную.
Это'Часто говорят, что eval () небезопасен, поэтому я хотел бы услышать, есть ли опасность или недостаток использования его в этой ситуации.
function (input) {
value = input.value.replace(/[^-\d/*+.]/g, '');
input.value=eval(value);
}