Файл: Маълумотлар типи (примитив ва объект) Массивлар Функция ва методлар.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.11.2023

Просмотров: 138

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

МАЪЛУМОТЛАР ТИПИ (ПРИМИТИВ ВА ОБЪЕКТ)

МАССИВЛАР

ФУНКЦИЯ ВА МЕТОДЛАР

Date объекти

SOUND ОБЪЕКТИ ActionScript дастурлаш тилида фойдаланувчига етиб борадиган хар қандай аудиоинформацияни бошқариш мумкин. Бунинг учун Sound объекти методларидан фойдаланиш етарли. Энг аввало объектни ўзини аниқлаш керак:magSound=new Sound ();кўплаб методлар . оператори орқали берилади. Масалан: MagSound.setVolume (75). Қуйида шу объект учун керак бўладиган баъзи функциялар рўйхати келтирилган. attachSound ("soundName"). Филмга кутубхонадан овоз қўшиш. getPan ().-100 ва 100 диопазондаги вақт бўйича баланснинг энг охирги қийматини қайтаради. Чап қисм манфий қийматларни, ўнг қисми эса мусбат қийматларга мос келади. 0 қиймат овоз кучини тенг тақсимланганини англатади. getVolume (). Овоз баландлигини 0 ва 100 интервалда белгилайди. setPan (). Чап ва ўнг калонкалар балансини ўрнатади. -100 ва -1 қиймат ўнг калонка овозининг баландлигини, 1 ва 100 диопазондаги қиймат эса ўнг калонка овозининг баландлигини билдиради. setVolume (). Овоз баландлиги даражасини ўрнатиш учун хизмат қилади. У 0 ва 100 сохада ўзгаради. Умумий холда 100 қиймат ўрнатилган бўлади. startCoff.loop (). Овозни файлдан ўқийди. Унга ушланиш вақтини ва қайтаришлар сонини бериш мумкин. stop (). Ўйнаётган овозни ўзиш учун хизмат қилади. Унда хеч қандай параметр йўқ. FLASH ДАСТУРИНИНГ БИРИКТИРИЛГАН ФУНКЦИЯЛАРИ Flash дастурининг кўпчилик бириктирилган функциялари _global обектининг функцияларидир. Яъни уларни эгасини кўрсатмасдан ихтёрий жойда чақириш мумкин. Аммо математик функцияла бундан мустасно. Бирор математик функцияни чақиришдан олдин Math объекти методини кўрсатиш керак. Math объекти хамма керакли математик функциялар ва константалар жамланган. Қуйида Math объекти константалари келтирилган: Math.E —натурал логарифм асоси (2,718), ёки Эйлера константаси; Math.LN10 — ўнли натурал логарифм (2,302); Math.LN2 — иккили натурал логарифм (0,693); Math.LOG2E — икки асосли е натурал логарифм (1,442); Math.LOG10E — ўн асосли е натурал логарифм (0,434); Math.PI — айлана узунлигини унинг диаметрига нисбати. (пи сони 3,14159); Math.SQRT1_2 - 1/2 дан квадрат илдиз (0,707); Math.SQRT2 — 2 дан квадрат илдиз (1,414). Number типи Flash дастурида битта сонли тип- Number типи мавжуд. Number типи орқали ўзгарувчига хар – қандай сонни:бутун, натурал ва х.к бириктиришимиз мумкин. Number типининг энг юқори ва энг паст чегаралари мавжуд. Уларни Number.MAX_VALUE ва Number.MIN_VALUE константалари орқали аниқланади. Number.MAX_VALUE константаси 1.79769313486231e+308 га ва Number.MIN_VALUE константаси 4.94065645841247e-324 га тенг. Flash дастурида Number типига double стандарт типи хам бирлаштириб юборилган. Бу тип хам бутун сонларни ва хам сузувчи вергулли сонларни хам ўз ичига олади. Double стандарт типи мураккаб хисоб китобларда, натижа юқори даражадаги аниқликда керак бўлганда ишлатилади.Масалан:a = 1/3;trace ("a = 1/3, яъни " + a);trace (" (a*3 == 1) = " + (a*3 == 1))trace (" (a*3 - 1)*Math.pow (2, 52) = " + (a*3 - 1)*Math.pow (2, 52));trace (" (a - 0.333333333333333)*Math.pow (2, 52) = "+ (a - 0.333333333333333)*Math.pow (2, 52));trace (" (a - 0.3333333333333333)*Math.pow (2, 52) = "+ (a - 0.3333333333333333)*Math.pow (2, 52));trace ("");// 1 ни бошқа сонга бўлиб кўрамизb = 1/Math.pow (7, 45);trace ("b = 1/Math.pow (7, 45), то есть " + b);trace (" (b*Math.pow (7, 45) == 1) = " + (b*Math.pow (7, 45) == 1))ва натижага эга бўламиз:a = 1/3, яъни 0.333333333333333(a*3 == 1) = true(a*3 - 1)*Math.pow (2, 52) = 0(a - 0.333333333333333)*Math.pow (2, 52) = 1.5(a - 0.3333333333333333)*Math.pow (2, 52) = 0b = 1/Math.pow (7, 45), то есть 9.34519137233795e-39(b*Math.pow (7, 45) == 1) = true Number типида сон бўлмаган қийматлар хам сақланиши мумкин. Бундай махсус қийматлар учта. Улардан иккитаси чексизликларни англатади. Чексизлилар мусбат чексизлик ва манфий чексизликларга бўлинади. Мусбат чексизликларга Number.MAX_VALUE константасидан катта сонлар, манфий чексизликларга эса Number.MAX_VALUE. -Number.MAX_VALUE дан кичик қийматлар киради. Мусбат чексизлик Number.POSITIVE_INFINITY ва манфий чексизлик Number.NEGATIVE_INFINITY константаларидир. Яна бир сон бўлмаган қиймат бу бирор сонни 0 га бўлганда хосил бўлади. Агар бу қийматлар қаторли ўзгарувчиларга айлантирилса Infinity ва –Infinity кўринишида бўлади:trace ("5/0 = " + 5/0);trace ("-5/0 = " + -5/0);trace ("-5/-0 = " + -5/-0);trace ("-5/Number.MIN_VALUE = " + -5/Number.MIN_VALUE);trace ("-5/-Number.MIN_VALUE = " + -5/-Number.MIN_VALUE);trace ("Math.log (0) = " + Math.log (0));trace ("Math.sqrt (-1) = " + Math.sqrt (-1));натижа:5/0 = Infinity-5/0 = -Infinity-5/-0 = -Infinity-5/Number.MIN_VALUE = -Infinity-5/-Number.MIN_VALUE = InfinityMath.log (0) = -InfinityMath.sqrt (-1) = NaN Учинчи сон бўлмаган қиймат бу Number.NaN дир. NaN-"Not a Number", яъни “Сон эмас”. Бунга юқоридаги мисолни охирги қаторини кўрсатиш мумкин. ТИПЛАР КОНВЕРТАЦИЯСИ ActionScript дастурлаш тили типлашмаган бўлсада типлар билан ишлаш яхши йўлга қўйилган. Бир типни бошқа типга ўгириш (конвертация)ни икки хил- аниқ ва ноаниқ усули мавжуд. Аввал ноаниқ усулини кўриб чиқайлик. “+” оператори билан ўзгарувчиларни қўшаётганимизда (конкатенация) қаторли тип бошқа хамма типлардан устунликка эга бўлади. Яъни автоматик тарзда бошқа типлар қаторли типга аланади. Масалан:trace ( (5 > 7) + 10 + " Қатор ");trace (10 + " Қатор " + (5 > 7));trace (10 - " Қатор " - (5 > 7));консолдан натижани кўрамиз:10 Қатор10 Қатор falseNaNБиринчи қаторда trace операндасидаги сонли ва логик типдаги ўзгарувчилар автоматик тарзда қаторли типга айланди. Қаторлар билан амал бажаришда “-” операторидан фойдаланиш маънога эга эмаслиги учун учинчи қаторда NaN натижаси пайдо бўлди. Логик типлар фақат true ёки false қайтара олгани учун уларни сонли типлага ноаниқ усулда қўшганда true 1га ва false 0 га айланади. Ва аксинча сонли типлар ноаниқ усулда логик типларга айлантирилаётганда хар қандай ноль бўлмаган сон true га ва ноль false га тенглашади. Гохида типларни конвертация қилишда аниқ сулдан фойдаланишга тўғри келади. Бунинг учун тўртта Number (), String (), Boolean () и Object (). Глобал функциялар мавжуд. Бу функциялар аргументи сифатида ўгирилиш керак бўлган объект киритилади ва натижа примитив типда бўлади. Бу функциялар шу типларнинг конструкторлари хамдир. Шунинг учун шу тўртта типдан бошқа фойдаланувчи типлари ўгирилмайди (ноаниқ усулда бир-бирини тушуниб кетади). МАХСУС ТИПЛАР ActionScript дастурлаш тилида иккита махсус типлар бўлиб, улар объектнинг қийматига бир хонали қиймат беради. Null типи – бўшлиққа ссилка бериш учун фойдаланилади. Flash дастурида бу типни четлаб ўтса хам бўлади, аммо ActionScript кодни Java фрагментга ўтишни оснолаштиради. Undefined типи – махсус типи чақирилаётган ўзгарувчи ёки функция типи олдиндан аниқланмаган бўлса фойдаланилади. Агар бу тип қаторли типга ўтказилаётган бўлса бўш қатор, сонга айлантирилаётган бўлса нолга ва логик типга айлантирилаётган бўлса false га тенглашади. БИРИКТИРИЛГАН ТИПЛАР Бириктирилган типлар typeof оператори билан аниқланган типларга айтилади:typeof <ифода>typeof қайтарувчи қийматлар жадвали: Тип typeof Number number Boolean boolean String string Object object Function function Array array MovieClip movieclip Button object Text field object undefined undefined null null Қуйидаги код орқали янада аниқлаштириш мумкин:trace ('typeof (5 + "") = ' + typeof (5 + ""));trace ('typeof (a) = ' + typeof (a));a = new Object ();trace ('typeof (a) = ' + typeof (a));a = null;trace ('typeof (a) = ' + typeof (a));a = {x: 20, y: "строчка"};trace ('typeof (a) = ' + typeof (a));trace ('typeof (a.x) = ' + typeof (a.x));trace ("typeof (String) = " + typeof (String));trace ("typeof (Function) = " + typeof (Function));// typeof (function) ёзуви синтаксис хато беради Ва қуйидаги натижани оламиз:typeof (5 + "") = stringtypeof (a) = undefinedtypeof (a) = objecttypeof (a) = nulltypeof (a) = objecttypeof (a.x) = numbertypeof (String) = functiontypeof (Function) = functionДеярли хар бир қатор ўзи хақида маълумот бермоқда.Замонавий дастурлаш тилларида фойдаланувчилвр учун катта қулайликлар яратишга эътибор қаратилмоқда. Худди шундай Flash дастурида хам. ОПЕРАТОРЛАР ActionScript дастурлаш тилининг деярли хамма операторлари С++ ва Java дастурлаш тилларидан олинган. Биринчи навбатда логик операторлар && ва ||. &&-логик “ва” ни билдиради ва ||-логик “ёки” ни билдиради. Бундан ташқари эскирган операторлар хам мавжуд. Уларни номларини ўзгарувчи ва функцияларга бериш мумкин эмас. Шунинг учун уларга хам тўхталайлик. Flash дастурининг тўртинчи версиясидан бошлаб қаторларни солиштириш учун махсус операторлар ишлаб чиқилди. Бу операторлар ифодаларни солиштириш учун уларни аввал қаторли кўринишга келтириб олади. Қуйида уларнинг рўйхати келтирилган: lt - кичик (less than) gt - катта (greater than) le – кичик ёки тенг (less or equal) ge – катта ёки тенг (greater or equal) eq - тенг (equal) ne - тенг эмас (not equal) яна хозирда қўлланилаётган != (агар солиштирилаётганлар тенг бўлмаса true қийматини қатаради) операторининг хам эскирган кўриниши мавжуд: <> - "ТЕНГ ЭМАС" оператори; Охирги эскирган операторларга add – қаторларнинг конкатенацияси киради. У худди “+” оператори билан бир хил вазифани бажаради.ПРИОРИТЕТЛАР ЖАДВАЛИ

FLASH КЛИПЛАРИДАН ВЕБ-САХИФАЛАРНИ ЮКЛАШ

КОМПОНЕНТЛАР

КТ си маълумотларни киритиш (тўплаш), уни ишлаш ва натижани (узатиш)га, ТТ маълумотларнинг нусхасини олишга мўлжалланган.

КТ ва ТТ ишларининг таркиби

КТ си билан ишлайдиганлар ишлаб чиқариш муҳитини зарарли ва хавфли омиллари ҳамда меҳнат жараёни таъсирига учраши мумкин:

- электростатик майдонларининг кучланганлиги;

- ҳавонинг ионизацияланиши;

- механик ва электр қурилмаларида ишлаганда ҳосил бўладиганшовқин;

электр токидан жароҳатланиш хавфи;

Компютер ва ташкилий техника қурилмаларини режалаштириш, жойлаштириш ва ишлатишга қўйиладиган талаблар

КТ ва ТТ ларда иш бошлашдан олдин хоналарда меҳнат шароитини ташкил этиш ва назорат қилиш ҳамда жавобгар шахс тайинланиши лозим.

Хоналарда ишчи ўринларини ташкил этиш

Иш стулининг устки қисмидаги қоплама материали кирланишдан осон тозаланиши, ярим юмшоқ, сирпанмайдиган, электролизатсияланмайдиган ва қопламаси ҳаво ўтказувчан бўлиши мақсадга мувофиқ.

Видеомониторга (видеотерминалга — ВДТ) қўйиладиган талаблар

Видеомонитор қуйидаги талабларга жавоб бериши керак:

Ёритилаётган нуқтанинг энг кичик ўлчами монохронли дисплей учун 0,4 мм ва рангли дисплей учун 0,6 мм. дан ката бўлмаслиги;

белги тасвирининг кескин фарқ қилиши 0,8 мм. дан кичик бўлмаслиги;

позитив кескин фарқ қилувчи ишларда тасвирлаш регенератсиясининг частотаси, тактнинг ишлаш тартиби 72 Гс. дан кам бўлмаслиги;

экран юзаси хираланишдан сақловчи қопламага эга бўлиши;

ишловчи кўзидан экрангача бўлган оралиқ 80 см чэгарасида бўлиши;

тасвирнинг паст частотаси 0,05—1,0 Гс, титраши 0,1 мм чегарасида бўлиши;

экран ўлчами диагонал бўйича 31 см.дан экрандаги белгининг баландлиги 38 мм. дан кам бўлмаслиги лозим.

Компютер техникаси билан ишловчиларнинг меҳнат қилиш ва дам олиш тартиби

SOUND ОБЪЕКТИ


ActionScript дастурлаш тилида фойдаланувчига етиб борадиган хар қандай аудиоинформацияни бошқариш мумкин. Бунинг учун Sound объекти методларидан фойдаланиш етарли. Энг аввало объектни ўзини аниқлаш керак:

magSound=new Sound ();

кўплаб методлар . оператори орқали берилади. Масалан: MagSound.setVolume (75). Қуйида шу объект учун керак бўладиган баъзи функциялар рўйхати келтирилган.

  • attachSound ("soundName"). Филмга кутубхонадан овоз қўшиш.

  • getPan ().-100 ва 100 диопазондаги вақт бўйича баланснинг энг охирги қийматини қайтаради. Чап қисм манфий қийматларни, ўнг қисми эса мусбат қийматларга мос келади. 0 қиймат овоз кучини тенг тақсимланганини англатади.

  • getVolume (). Овоз баландлигини 0 ва 100 интервалда белгилайди.

  • setPan (). Чап ва ўнг калонкалар балансини ўрнатади. -100 ва -1 қиймат ўнг калонка овозининг баландлигини, 1 ва 100 диопазондаги қиймат эса ўнг калонка овозининг баландлигини билдиради.

  • setVolume (). Овоз баландлиги даражасини ўрнатиш учун хизмат қилади. У 0 ва 100 сохада ўзгаради. Умумий холда 100 қиймат ўрнатилган бўлади.

  • startCoff.loop (). Овозни файлдан ўқийди. Унга ушланиш вақтини ва қайтаришлар сонини бериш мумкин.

  • stop (). Ўйнаётган овозни ўзиш учун хизмат қилади. Унда хеч қандай параметр йўқ.

FLASH ДАСТУРИНИНГ БИРИКТИРИЛГАН ФУНКЦИЯЛАРИ



Flash дастурининг кўпчилик бириктирилган функциялари _global обектининг функцияларидир. Яъни уларни эгасини кўрсатмасдан ихтёрий жойда чақириш мумкин. Аммо математик функцияла бундан мустасно. Бирор математик функцияни чақиришдан олдин Math объекти методини кўрсатиш керак. Math объекти хамма керакли математик функциялар ва константалар жамланган. Қуйида Math объекти константалари келтирилган:

  • Math.E —натурал логарифм асоси (2,718), ёки Эйлера константаси;

  • Math.LN10 — ўнли натурал логарифм (2,302);

  • Math.LN2 — иккили натурал логарифм (0,693);

  • Math.LOG2E — икки асосли е натурал логарифм (1,442);

  • Math.LOG10E — ўн асосли е натурал логарифм (0,434);

  • Math.PI — айлана узунлигини унинг диаметрига нисбати. (пи сони 3,14159);

  • Math.SQRT1_2 - 1/2 дан квадрат илдиз (0,707);

  • Math.SQRT2 — 2 дан квадрат илдиз (1,414).

Number типи



Flash дастурида битта сонли тип- Number типи мавжуд. Number типи орқали ўзгарувчига хар – қандай сонни:бутун, натурал ва х.к бириктиришимиз мумкин. Number типининг энг юқори ва энг паст чегаралари мавжуд. Уларни Number.MAX_VALUE ва Number.MIN_VALUE константалари орқали аниқланади. Number.MAX_VALUE константаси 1.79769313486231e+308 га ва Number.MIN_VALUE константаси 4.94065645841247e-324 га тенг. Flash дастурида Number типига double стандарт типи хам бирлаштириб юборилган. Бу тип хам бутун сонларни ва хам сузувчи вергулли сонларни хам ўз ичига олади. Double стандарт типи мураккаб хисоб китобларда, натижа юқори даражадаги аниқликда керак бўлганда ишлатилади.

Масалан:
a = 1/3;

trace ("a = 1/3, яъни " + a);

trace (" (a*3 == 1) = " + (a*3 == 1))

trace (" (a*3 - 1)*Math.pow (2, 52) = " + (a*3 - 1)*Math.pow (2, 52));

trace (" (a - 0.333333333333333)*Math.pow (2, 52) = "

+ (a - 0.333333333333333)*Math.pow (2, 52));

trace (" (a - 0.3333333333333333)*Math.pow (2, 52) = "

+ (a - 0.3333333333333333)*Math.pow (2, 52));

trace ("");

// 1 ни бошқа сонга бўлиб кўрамиз

b = 1/Math.pow (7, 45);

trace ("b = 1/Math.pow (7, 45), то есть " + b);

trace (" (b*Math.pow (7, 45) == 1) = " + (b*Math.pow (7, 45) == 1))

ва натижага эга бўламиз:

a = 1/3, яъни 0.333333333333333

(a*3 == 1) = true

(a*3 - 1)*Math.pow (2, 52) = 0

(a - 0.333333333333333)*Math.pow (2, 52) = 1.5

(a - 0.3333333333333333)*Math.pow (2, 52) = 0

b = 1/Math.pow (7, 45), то есть 9.34519137233795e-39

(b*Math.pow (7, 45) == 1) = true
Number типида сон бўлмаган қийматлар хам сақланиши мумкин. Бундай махсус қийматлар учта. Улардан иккитаси чексизликларни англатади. Чексизлилар мусбат чексизлик ва манфий чексизликларга бўлинади. Мусбат чексизликларга Number.MAX_VALUE константасидан катта сонлар, манфий чексизликларга эса Number.MAX_VALUE. -Number.MAX_VALUE дан кичик қийматлар киради. Мусбат чексизлик Number.POSITIVE_INFINITY ва манфий чексизлик Number.NEGATIVE_INFINITY константаларидир. Яна бир сон бўлмаган қиймат бу бирор сонни 0 га бўлганда хосил бўлади. Агар бу қийматлар қаторли ўзгарувчиларга айлантирилса Infinity ва –Infinity кўринишида бўлади:

trace ("5/0 = " + 5/0);

trace ("-5/0 = " + -5/0);

trace ("-5/-0 = " + -5/-0);

trace ("-5/Number.MIN_VALUE = " + -5/Number.MIN_VALUE);

trace ("-5/-Number.MIN_VALUE = " + -5/-Number.MIN_VALUE);

trace ("Math.log (0) = " + Math.log (0));

trace ("Math.sqrt (-1) = " + Math.sqrt (-1));

натижа:

5/0 = Infinity

-5/0 = -Infinity

-5/-0 = -Infinity

-5/Number.MIN_VALUE = -Infinity

-5/-Number.MIN_VALUE = Infinity

Math.log (0) = -Infinity

Math.sqrt (-1) = NaN
Учинчи сон бўлмаган қиймат бу Number.NaN дир. NaN-"Not a Number", яъни “Сон эмас”. Бунга юқоридаги мисолни охирги қаторини кўрсатиш мумкин.

ТИПЛАР КОНВЕРТАЦИЯСИ


ActionScript дастурлаш тили типлашмаган бўлсада типлар билан ишлаш яхши йўлга қўйилган. Бир типни бошқа типга ўгириш (конвертация)ни икки хил- аниқ ва ноаниқ усули мавжуд. Аввал ноаниқ усулини кўриб чиқайлик. “+” оператори билан ўзгарувчиларни қўшаётганимизда (конкатенация) қаторли тип бошқа хамма типлардан устунликка эга бўлади. Яъни автоматик тарзда бошқа типлар қаторли типга аланади. Масалан:
trace ( (5 > 7) + 10 + " Қатор ");

trace (10 + " Қатор " + (5 > 7));

trace (10 - " Қатор " - (5 > 7));

консолдан натижани кўрамиз:
10 Қатор

10 Қатор false

NaN
Биринчи қаторда trace операндасидаги сонли ва логик типдаги ўзгарувчилар автоматик тарзда қаторли типга айланди. Қаторлар билан амал бажаришда “-” операторидан фойдаланиш маънога эга эмаслиги учун учинчи қаторда NaN натижаси пайдо бўлди. Логик типлар фақат true ёки false қайтара олгани учун уларни сонли типлага ноаниқ усулда қўшганда true 1га ва false 0 га айланади. Ва аксинча сонли типлар ноаниқ усулда логик типларга айлантирилаётганда хар қандай ноль бўлмаган сон true га ва ноль false га тенглашади.

Гохида типларни конвертация қилишда аниқ сулдан фойдаланишга тўғри келади. Бунинг учун тўртта Number (), String (), Boolean () и Object (). Глобал функциялар мавжуд. Бу функциялар аргументи сифатида ўгирилиш керак бўлган объект киритилади ва натижа примитив типда бўлади. Бу функциялар шу типларнинг конструкторлари хамдир. Шунинг учун шу тўртта типдан бошқа фойдаланувчи типлари ўгирилмайди (ноаниқ усулда бир-бирини тушуниб кетади).

МАХСУС ТИПЛАР


ActionScript дастурлаш тилида иккита махсус типлар бўлиб, улар объектнинг қийматига бир хонали қиймат беради.

  • Null типи – бўшлиққа ссилка бериш учун фойдаланилади. Flash дастурида бу типни четлаб ўтса хам бўлади, аммо ActionScript кодни Java фрагментга ўтишни оснолаштиради.

  • Undefined типи – махсус типи чақирилаётган ўзгарувчи ёки функция типи олдиндан аниқланмаган бўлса фойдаланилади. Агар бу тип қаторли типга ўтказилаётган бўлса бўш қатор, сонга айлантирилаётган бўлса нолга ва логик типга айлантирилаётган бўлса false га тенглашади.

БИРИКТИРИЛГАН ТИПЛАР



Бириктирилган типлар typeof оператори билан аниқланган типларга айтилади:

typeof <ифода>

typeof қайтарувчи қийматлар жадвали:

Тип

typeof

Number

number

Boolean

boolean

String

string

Object

object

Function

function

Array

array

MovieClip

movieclip

Button

object

Text field

object

undefined

undefined

null

null


Қуйидаги код орқали янада аниқлаштириш мумкин:

trace ('typeof (5 + "") = ' + typeof (5 + ""));

trace ('typeof (a) = ' + typeof (a));

a = new Object ();

trace ('typeof (a) = ' + typeof (a));

a = null;

trace ('typeof (a) = ' + typeof (a));

a = {x: 20, y: "строчка"};

trace ('typeof (a) = ' + typeof (a));

trace ('typeof (a.x) = ' + typeof (a.x));

trace ("typeof (String) = " + typeof (String));

trace ("typeof (Function) = " + typeof (Function));

// typeof (function) ёзуви синтаксис хато беради

Ва қуйидаги натижани оламиз:

typeof (5 + "") = string

typeof (a) = undefined

typeof (a) = object

typeof (a) = null

typeof (a) = object

typeof (a.x) = number

typeof (String) = function

typeof (Function) = function

Деярли хар бир қатор ўзи хақида маълумот бермоқда.

Замонавий дастурлаш тилларида фойдаланувчилвр учун катта қулайликлар яратишга эътибор қаратилмоқда. Худди шундай Flash дастурида хам.

ОПЕРАТОРЛАР



ActionScript дастурлаш тилининг деярли хамма операторлари С++ ва Java дастурлаш тилларидан олинган. Биринчи навбатда логик операторлар && ва ||. &&-логик “ва” ни билдиради ва ||-логик “ёки” ни билдиради.

Бундан ташқари эскирган операторлар хам мавжуд. Уларни номларини ўзгарувчи ва функцияларга бериш мумкин эмас. Шунинг учун уларга хам тўхталайлик. Flash дастурининг тўртинчи версиясидан бошлаб қаторларни солиштириш учун махсус операторлар ишлаб чиқилди. Бу операторлар ифодаларни солиштириш учун уларни аввал қаторли кўринишга келтириб олади. Қуйида уларнинг рўйхати келтирилган:

  • lt - кичик (less than)

  • gt - катта (greater than)

  • le – кичик ёки тенг (less or equal)

  • ge – катта ёки тенг (greater or equal)

  • eq - тенг (equal)

  • ne - тенг эмас (not equal)

яна хозирда қўлланилаётган != (агар солиштирилаётганлар тенг бўлмаса true қийматини қатаради) операторининг хам эскирган кўриниши мавжуд:

  • <> - "ТЕНГ ЭМАС" оператори;

Охирги эскирган операторларга

  • add – қаторларнинг конкатенацияси

киради. У худди “+” оператори билан бир хил вазифани бажаради.

ПРИОРИТЕТЛАР ЖАДВАЛИ

Приоритет

Операторлар

Операторлар типи

1

()

Грухлаш

2

[] .

Элемент ёки майдонга йўл

3

- ! ++ - typeof void

Унар операторлар

4

* / %

Мультипликатив операторлар

5

+ -

Аддитив операторлар

6

<< >> >>>

Бинар силжиш

7

< > <= >= instanceof

Муносабат операторлари

8

== != === !==

Тенгликни текширувчи операторлар

9

&

разрядли ВА (AND)

10

^

Разрядли ташлаб кетувчи ЁКИ (XOR)

11

|

Разрядли ЁКИ (OR)

12

&&

Логик ВА (AND)

13

||

Логик ЁКИ (OR)

14

?:

Шарт оператори

15

= *= /= %= += -= <<= >>= >>>= &= ^= |=

тенглаштириш (оддий ва таркибли)

16

,

Кетма-кет хисоблаш


FLASH КЛИПЛАРИДАН ВЕБ-САХИФАЛАРНИ ЮКЛАШ



Flash клипларидан веб-сахифаларни юклаш Flash дастурининг энг кучли томонларидан бири хисобланади. Бу иш MovieClip класининг getURL методи орқали амалга оширилади. Унинг синтаксиси қуйидагича:

getURL (url [, window [, variables]]);

.getURL (url [,window, variables]);

Биринчи параметр – юкланмоқчи бўлган сахифанинг url адреси. Бу html-документ ёки оддий *.swf-файл ёки расм бўлиши мумкин.

Иккинчи параметр – ёзиш шарт бўлмаган, ойна (фрейм) номини аниқловчи параметр. У тўрт хил бўлиши мумкин:

_self – жорий ойнанинг жорий фрейми.

_blank – янги ойна.

_parent – бош фреймга (жорийга асосан).

_top – жорий ойнанинг юқори фреймига

Учинчи параметр – ёзиш шарт бўлмаган,серверга жўнатилувчи метод номи.

ТАШҚИ РОЛИКНИ ЮКЛАШ



ActionScript дастурлаш тилида ташқи роликларни юкловчи иккита бир-бирига ўхшаш методлар мавжуд. Улар loadMovie ва loadMovieNum. loadMovie методи ташқи роликни клип ичига юклашни англатади. Унинг синтаксиси:
.loadMovie (url [,variables]);

Бу ерда url плейер *.swf файлни юклаб оладиган адрес.

Variables-ўзгарувчининг серверга жўнатиш усули ("GET" или "POST"). MovieClip класининг getBytesLoaded (), getBytesTotal () методлари ва уларнинг _framesloaded и _totalframes хусусиятлари орқали роликни юкланиш жараёнини кузатиш мумкин. loadMovie методининг акси бўлмиш unloadMovie методи клипдан юкланган роликни чиқариб ташлаш учун хизмат қилади. Роликни юклашни иккинчи усули loadMovieNum глобал функциясидан фойдаланишдир. Бу функция роликни флэш-плеер даражасида (level) юклайди. Унинг синтаксиси қуйидагича:

loadMovieNum (url, level [,variables]);

ТУГМА


Хар қандай дастурни тугмаларсиз тасаввур қилиш қийин. Интерактив роликларнинг асосий қисмини тугмалар ташкил қилгани учун уларга бироз тўхталамиз. Flash дастурида тугмаларга боғлиқ бўлган ходисалар энг биринчи версиялардан бери деярли ўзгаргани йўқ. Уларнинг асосийлари қуйидагилар:

  1. press – сичқонча тугма чегаралари ичидалигида унинг чап тугмаси босилиши билан чақирилади.

  2. release - сичқонча тугма чегаралари ичидалигида унинг чап тугмаси босиб қўйиб юборилиши билан чақирилади.

  3. releaseOutside – сичқончанинг чап клавишаси тугма ичида босилиб, қўйиб юбормасдан тугма чегараси ташқарисида қўйиб юборилганда чақирилади.

  4. rollOver – сичқонча тугма чегарасига кирганда чақирилади.

  5. rollOut - сичқонча тугма чегарасидан чиқиб кетганда чақирилади.

  6. dragOver - сичқончанинг чап клавишаси тугма ичида босилиб, қўйиб юбормасдан тугма чегараси ташқарисига чиқиши билан чақирилади.

  7. dragOut - сичқончанинг чап клавишаси тугма ичида босилиб, қўйиб юбормасдан тугма чегараси ташқарисига чиқиб ва яна тугма ичига кирганда бажарилади.

  8. keyPress ("клавиша") - "клавиша" босилганда чақирилади. "клавиша"-клавиатурадаги функционал тугмалардан ташқари хамма тугмалар бўлиши мумкин.

  9. onKeyDown – клавиатурадан бирор клавиша чақирилганда бажарилади. Айнан қайси клавиша босилганини билиш учун Key классининг статик функциялар- Key.getAscii () ёки Key.getCode () дан фойдаланиб унинг мос ASCII коди аниқланади. Шу механизм ишлаши учун сичқончанинг реакцияси функцияси аниқланиши билан Key.addListener (clip) кодни териш керак.

  10. onKeyUp- клавиатурадан бирор клавиша босиб қўйиб юборилганда чақирилади.

  11. onMouseDown- сичқон тугмаси роликнинг бошланғич нуқтасига босилганда чақирилади.

MOVIE CLIPS


Flash дастури анимацияларини Movie Clips сиз хам қилиш мумкин. Аммо бундай анимацияларни ActionScript дастурлаш тили орқали бошқариб бўлмайди. Қуйида Movie Clips нинг асосий функциялари ва параметрлари келтирилган:

Функциялар:

  • play () –клипнинг ўйнашини бошлаш ёки янгилаш;

  • stop () - клипнинг ўйнашини тўхтатиш;

  • gotoAndPlay () – кўрсатилган кадрга бориш ва ўйнашни давом эттириш;

  • gotoAndStop () - кўрсатилган кадрга бориш ва ўша ерда тўхташ.

Параметрлар:

  • _x, _y - клипа координаталари (пикселларда);

  • _xscale, _yscale – клипнинг горизантал ва вертикалдаги процентдаги масштаби;

  • _width, _height – клипнинг эни ва бўйи (пикселларда);

  • _rotation – клипнинг бурилиш бурчаги (градусларда);

  • _alpha – клипнинг хиралик даражаси (процентларда);

  • _visible - кўриниш.

Қуйида тугмалар ва клип методларидан фойдаланишга мисол келтирилган

// ходисанинг клавиатурага реакциясини аниқлаймиз

clip.onKeyDown = function (){

trace ("KeyDown: " + Key.getCode ());

}

clip.onKeyUp = function (){

trace ("KeyUp: " + Key.getCode ());

}

// хоси бўлган ходисаларга клип маълумотларини ёзамиз

Key.addListener (clip);

// ходисанинг сичқончага реакциясини аниқлаймиз

clip.onMouseDown = function (){

trace ("MouseDown: x = " + _xmouse + " y = " + _ymouse);

}

Key ва Mouse глобал объектлари


Key объекти клавиатура холатини аниқлайди – масалан, Caps Lock босилган ёки босилмаганлигини, энг охирги босилган клавишни, хозир қандай клавишалар комбинацияси босилганини аниқлаш мумкин.

Mouse (сичқон) курсор кўринишини бошқаради. Масалан:

Mouse.hide ();

Бу коддан кейин курсор кўринмайди, аммо активлигича қолади.

Mouse (сичқон) курсор кўриниши учун :

Mouse.show ();

Кодидан фойдаланилади.

TextField ва TextFormat объектлари


TextField объекти орқали янги текстли майдон хосил қилиш ва унинг кўпчилик хараутеристик белгиларини бошқариш мумкин. Масалан текстли майдон форматини ва текст сургичини бошқариш мумкин. TextFormat объекти текстли майдондаги текст форматини белгилаш учун хизмат қилади. setTextFormat () ва setNewTextFormat () методлари орқали TextFormat объектини текстли майдонга қўллаш мумкин.

nameOfTextField.setTextFormat (nameOfFormatObject);

Вақт чизғичи ўрнига setinterval дан фодаланиш


Роликда қандайдир харакатсиз вақт ўтишини вақт чизғичига жойлаштирмасдан дастурий қисмдан фойдаланиб қилиш хам мумкин. Бу setinterval функциясидир. У бизга callback функциясини керакли частоталари билан чақириб беради. Setinterval ни икки хили мавжуд. Биринчиси this га мурожаат қилмасдан методлардан фойдаланиш, яъни “оддий функция”. Иккинчи кўриниши эса объектларнинг методларни чақириш учун:

  • setInterval (function, interval, params);

  • setInterval (object, methodName, interval, params);

иккала кўриниш хам intervalID аталувчи функцияни чақиради. Бу функция кейин clearInterval функциясига callback-функцининг чақирилишини тўхтатиш учун хизмат қилади..

Interval миллисекундларда берилади. setInterval функиясидан фойдаланиш учун қуйидагиларгаамал қилиш керак.

  • Агар Interval параметри клипнинг янгиланиш давридан кичик бўлса, callback-функцияси кадрни қайта янгиланишидан тезроқ чақирилиши керак. Чунки плейр callback-функциясини берилган интервалга яқин частота билан чақиришга харакат қилади. Бухолларда updateAfterEvent функциясини чақириш керак. У экранда қисмли қайта чизишларни амалга оширади.

  • Агар Interval параметри клипнинг янгиланиш давридан катта бўлса, callback-функцияси кадрни қайта янгиланишидан секинроқ чақирилиши керак.

Масалан:

N = 10;

function code1 () {

for (var i = 0; i < N; i++);

trace ("code1 invoked");

}

function code2 () {

for (var i = 0; i < N; i++);

trace ("code2 invoked");

}

int1 = setInterval (code1, 10);

int2 = setInterval (code2, 100);
Output даги натижадан хаммаси тўғри ишлаётганини кўрамиз, яъни сallback-функцияси кутилган частоталарда чақириляпти. Энди иккинчи холни кўриш учун code1 () ва code2 () вақтларни катталаштирамиз.

N = 10000;

function code1 () {

for (var i = 0; i < N; i++);

trace ("code1 invoked");

}

function code2 () {

for (var i = 0; i < N; i++);

trace ("code2 invoked");

}

int1 = setInterval (code1, 10);

int2 = setInterval (code2, 100);

ActionScript ёрдамида чизиш


Тўғри чизиқ чизиш. Хар бир филмнинг moveTo функцияси орқали аниқланган чизишнинг жорий позицияси мавжуд. Одатда у (0,0) нуқтада ўрнатилган бўлади. Филмдаги хамма чизиқларни ташқи кўринишини аниқловчи lineStyle мавжуд. Агар бу функцияни созланмаса бирор чизиқ хам кўринишга эга бўлмайди. Тўғри чизиқ чизиш учун биринчи кадрга қуйидаги кодни киритиш керак.

this.lineStyle (3, 0x000000);

this.lineTo (200, 100);



бу код расмдагидек юқори чап бурчакдан (200, 100) нуқтагача чизиқ чизади. lineStyle функцияси эса уни қора рангга бўяйди ва энини уч пикселга кенгайтиради. Агар чизиқ бирор нуқтадан бошланиши керак бўлса қуйидаги код каби ёзиш керак:
this.lineStyle (3, 0x000000);

this.moveTo (200, 0);

this.lineTo (200, 100);

ва натижа қуйидаги расмдагидек бўлади.



Эгри чизиқ чизиш. Эгри чизиқни чизиш учун иккита нуқталар тўпламидан фойдаланиш керак:

this.curveTo (controlX, controlY, anchorX, anchorY);

Эгри чизиқ жорий чизиш нуқтасидан anchorX, anchorY нуқтасигача controlX ва controlY қийматлар билан чизилади. controlX ва controlY қийматлар эгилиш даражасини белгилайди:

this.lineStyle (3, 0x000000);

this.moveTo (50, 50);

this.curveTo (100, 0, 250, 250);



Майдон қўшиш. Чизиқлар тўпламини чизиш орқали биз майдонлар хосил қиламиз. Майдон хосил қилишнинг асосий усули beginFill функциясидан фойдаланишдир.қуйида тўртбурчак майдонини чизувчи мисол келтирилган:

this.moveTo (100, 100);

this.beginFill (0xFF0000);

this.lineTo (200, 100);

this.lineTo (200, 200);

this.lineTo (100, 200);

this.lineTo (100, 100);

this.endFill ();



lineStyle функциясидан фойдаланиб бу майдонга чегара турини беришимиз мумкин.

Доира чизиш. Доира чизиш учун curveTo функциясидан фойдаланилади. Бу функция тўғри чизиқ охирларини айлантиришга асосланган. Бу функцияга X ва Y - айлана марказлари ва cWidth – айлана эни каби параметрлар берилади:

function drawCircle (x, y, radius, cWidth) {

me = _root.createEmptyMovieClip ("circle"+cnt,++cnt);

me.lineStyle (radius, 0x000000, 100);

me.moveTo (x, y);

me.lineTo (x, y+.15);

me.lineStyle (radius-cWidth, 0xffffff, 100);

me.moveTo (x, y);

me.lineTo (x, y+.15);}

drawCircle (100, 100, 100, 20);

Натижада қуйидаги айлана хосил бўлади.



КОМПОНЕНТЛАР


Flash дастурининг интерактивлигини ошириш учун компонентлар тўплами киритилган. Хар бир янги версияларда янги компонентлар қўшилмоқда. Уларнинг хусусиятларини ActionScript ёрдамида осон бошқариш мумкин. Улардан энг қўлланиладиганлари қуйидагилар:

  • CheckBox — байроқча;

  • ComboBox — ёйилувчи меню

  • ListBox - рўйхат;

  • PushButton - тугма;

  • RadioButton — улагич;

  • ScrollBar — ўтиш йўлакчаси;

  • ScrollPane - ойна.

ListBox – рўйхат параметрлари. ListBox Flash-филмда худди бошқа Windows дастурлардагидек кўпгина вариантлардан бирини танлвш имконини билдиради. Унда қуйидаги параметрлар мавжуд:

  • Labels (Белги) – рўйхатдаги хар бир пункт номи тўплами;

  • Data (Маълумотлар) — рўйхатдаги хар бир пункт қиймати тўплами;

  • Select Multiple (кўп мартали танлов) — агар ушбу параметр қиймати true бўлса рўйхатдан кўп марта танлаш имкони берилади.

  • Change Handler (Қайта ишловчини ўзгартириш) — имеет тот же смысл, что и для других компонентов. Байроқчани холатини ўзгартириш учун функция чақириш.

RadioButton — улагич параметрлари. Унинг байроқчадан фарқи ишчи майдонда фақат битта вариантни танлаш имконини беради:

  • Group Name (Гурух номи) — шу учириб улагичга тегишли гурух номи.

Data (Маълумот) —сервердаги маълумотларга боғланган маълумотлар (ёки локал сценарий орқали қайта ишлаш).

CheckBox — байроқча параметрлари.

Label — майдондаги байроқча тексти;

Initial Value — байроқчанинг жорий холати. Унинг икки хил қиймати мавжуд. true (ёки 1)-у ўрнатилган бўлса. false (0) ўрнатилмаган бўлса.
Label Placement (байроқча текстининг жойлашиши) — байроқча текстининг байроқча белгисига нисбатан жойлашиши.
Change Handler (Қайта ишловчини ўзгартириш) — байроқчани холатини ўзгартириш учун функция чақириш. Масала: ишчи столга CheckBox ташлаб унга ok номи ва ёзув майдони ташаб уни nu деб номлаймиз. Ва биринчи кадрга қуйидаги кодни ёзамиз:

_root.onEnterFrame=function ()

{if (ok.selected==true){nu.text="belgilangan"}

else if (ok.selected==false)nu.text="belgilanmagan "}

натижада CheckBox белгилаганимизда ёзув майдонида "belgilangan" ва белгини олганимизда "belgilanmagan " ёзуви пайдо бўлади.

Лойихалаш қисми

Анимация дастури Macromedia Flash. Дастурнинг асосий иш сохалари ва тушунчалари.


       Macromedia Flash дастури ёрдамида хам анимация ва такдимот файлларни яратишимиз мумкин. Аммо Power Point га караганда Macromedia Flash дастурда яратилган анимация файллари тулик сиз томонингиздан яратилади ва анимациялаштирилади. Шу билан биргаликда бу дастурда актив элементлар билан ишлаш ва дастурлаш имкониятлари мавжуд. Асосан Macromedia Flash дастурида кичик анимация файллари (клиплар), Интернет сахифалар, электрон кулланмалар ва ... Flash дастурда яратилган файллар узининг оригинал, ишлаш соддалиги , яратилиш мураккаблиги, тезкорлиги, мультимедия жихозланганлиги ва хажм буйича кичиклиги билан кузга ташланишади.


       Дастурни ишга тушириш учун Windows нинг ПУСК тугмасининг ПРОГРАММЫ булимининг Macromedia грурухи ичидаги Macromedia Flash буйругини танлаймиз. Натижада экранда куйидаги дастур ойнаси хосил килинади.

      



Flash дастурида ишлаш учун биз бир нечта янги тушунчалар билан танишимиз зарур. Булар: Flash белгиси, график тасвир (символ), анимацион клип, актив тугма, сцена, кадр, бошкарув кадр, вакт-чизгичи, ва катлам.



       Вакт-чизгичи (TimeLine - Временная шкала) - Flash дастурида анимация харакатларни яратишида асосий иш куроли. Ушбу сохада катлам ва кадрларни куришимиз ва улар устидан хар хил амалларни бажаришимиз мумкин. Вакт-чизгич оркали катламларни жойлашуви ва тури, кадрлар тури (бошкарув ва автоматик яратилган кадрлар) ва улардаги action дастурлаш скриптлар мавжудлигини куришимиз ва созлашимиз мумкин.

       Ушбу соханинг чап томонда катламлар сохаси, унг томода эса шу катламлардаги кадрлар сохалари жойлашган.

Вакт-чизгичнинг чап (катламлар) томони

- устуни катлам куриниши ёки куринмаслигини,
- устуни катламни узгартириш мумкинлиги ёки мумкин эмаслиги ва
- устуни катлам элементлари тулик ёки факат чегаралари куринишини узгартиришга ёрдам беради.
- тугмаси янги катлам яратиш,
- тугмаси харакат траекторияси катламни яратиш,
- тугмаси катламлар учун папка яратиш,
- тугмаси эса танланган катламни учириш амалларни бажаради.

Вакт-чизгичнинг унг (кадрлар) томони

Вакт-чизгичнининг унг томоннинг пастки кисмидаги жойлашган
- сохаси бош кадрга утиш, кушни кадрларни ёки улар чегараларини курсатиш хамда бир нечта кадрларни бир пайтда тахрирлаш тугмалари,