![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2004
Адрес: Moscow
Сообщений: 115
|
Есть функция, которая вычисляет выражение, заданное с помощью строки
(т.е. calculate("(12 + 6) / 3") должно вернуть 6) Но помимо вычисления собственно численных выражений еще можно задавать свои переменные в другом месте и передавать в эту функцию в составе строки (т.е. где-то задаем x = 10 и получаем calculate("x + 5") = 15) Соот-но, если в функции встречается переменная, проверяется, задана ли она, и, если не задана, функция должна вернуть undefined. А я в другом месте говорю - просчитай это выражение и, если вернулось undefined, выведи сообщение: "Вы не задали значение переменной &variable." Все вроде хорошо, функция все подсчитывает, инициализацию переменных проверяет, но когда ф-ция возвращает undefined, на выходе я каждый раз получаю 0. Как мне узнавать, что выражение не может быть посчитано? У меня есть вариант только в ф-ции выдавать ошибку, а я ее буду ловить и выдавать сообщ-ние, но мне этот вариант не очень нравится. Кроме того, это ж логично, если значения выражения неопределенно, я в итоге и получаю undefined. |
|
|||||
|
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
|
|||||
|
Цитата:
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Цитата:
Специально проверял создавая такие переменные, а потом декомпилируя полученный файл |
|
|||||
|
Регистрация: Mar 2004
Адрес: Moscow
Сообщений: 115
|
Не работает.
В результате трейсится: "test: 0 false" |
|
|||||
|
если надо инт то разве что могу порекомендовать int.MAX_VALUE \ int.MIN_VALUE, другие варианты более чем возможны. например uint при получении отрицательного числа принимает максимальное значение. ну или как советовали перейти на намбер.
|
|
|||||
|
Number это согласно документации IEEE-754 double-precision floating-point number. Undefined и NaN бывают только в нём, курите раз и два.
__________________
:) |
![]() |
![]() |
Часовой пояс GMT +4, время: 11:28. |
|
|
« Предыдущая тема | Следующая тема » |
|
|