Содержание

Конструкции

if

if (condition) {} else {}

switch

switch(expression) { case label1: 
                                 statements1;
                                 break;
                     case label2:
                                 statements2;
                                 break;
                     [default: 
                                 statements_default;
                                 break;]
                } 

for

Цикл с начальным и конечным значениями.

for (<var> in <startIndex> .. <endIndex>) {<op>} 

Пример:

for (i in 1..10) { println(i); } 

Цикл по массиву значений <view> или <query>

for (<var> in <array-var>) { 
   println(<var>); 
} 

где,
<array-var> - выражение возвращающее массив AppXMLArray
<var> - имя локальной переменной с текущим элементом массива

Внутри цикла, все переменные цикла имеют приоритет над переменными за пределами цикла или id

Поддержка синтаксиса цикла

for([start_condition]; [end_condition]; [expr]) statement; 

Поддержка синтаксиса цикла

for(var in exp1..expr2) для случая expr1>expr2 (обратный цикл) 

Пример 1:

var i=0; 
for(item in view_shop) { 
    println((i++) + '. ' + 'Shop name' + item[1]); // выводим пронумерованный список магазинов из двумерного массива
    // или 
    println((i++) + '. ' + 'Shop name' + item); // выводим пронумерованный список магазинов из одномерного массива
} 

Пример 2 (с заглядыванием вперед):

var i=0; 
for (a in array) { 
   if (a.index < a.length) { 
       print(array[(i++) + 1]) // печатаем все элементы, кроме 0-го 
   }
}

while

Цикл с условием:

while(condition) {...}; 

do

Цикл с постусловием:

do {...} while(condition); 

:!: Циклы: ключевые слова - last (выход), next (переход к следующей итерации).

Кроме этого, поддерживается указатель this, указывающий на объект, сгенерировавшее событие.

Для вызова Java-метода требуется использовать префикс «java:», например,

 java:callMyMethod("Hello", true, 1);

Помните, что java-метод должен иметь ожидаемых описанных параметров на один параметр больше (первый, Object).

Указанные выше выражения и команды можно записывать как в самих атрибутах, так и во вложенных тэгах с именами, равными имени соответствущего событийного атрибута (что предпочтительнее в случае большого объекма кода).

Пример:

<onAction>
    query.sql="select * from t1";
    print(query[][1,3]);
</onAction>
 
script/construction.txt · Последние изменения: 29/10/2020 16:32 (внешнее изменение)
 
Recent changes RSS feed Valid XHTML 1.0 Valid CSS