![]() |
один из вариантов, конечно. но он не требует постоянного парсинга для каждого вычисления. дерево потом можно крутить сколько угодно, и менять значения переменных. шум, как я понял, дошёл до того, что на каждое вычисление нужен парсинг.
|
в любом случае ф-цию придётся каждый раз вызывать.
а шум зашел из-за того что не работает eval("x*x"); |
в честь чего каждый-то? при создании нового выражения - да. при вычислении одного и того же несколько раз - не обязательно.
|
Я думаю тебе нужно использовать Обратную польскую запись :)
|
блин, действительно польскую :) склероз :(
|
Подниму трэд. Практически та же байда.
Цитата из хэлпа: "...при ее помощи можно динамически преобразовывать строки в идентификаторы объектов, клипов и функций..." - эт про eval. суть в следующем. надо запускать функцию с параметром(ами), причем имя и параметры должны браться из строки. т.е. что-то типа: Код:
var str:String = "trase ('help')";Спасибо!) |
упс, так сказать...
нашел решение сам. :) Код:
var f:String = "ff"; |
можно так
e = "x * x" f = eval(" function(x) {return " + e + "};") потом типа y = f(x) куда надо просто передаешь "x * x" но по-моему удобнее просто передать функцию |
| Часовой пояс GMT +4, время: 05:21. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.