Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Macromedia Flash Professional 8. Π“Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈ анимация». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 87

Автор Π’. Π”Ρ€ΠΎΠ½ΠΎΠ²

Рассмотрим Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

var myArray = ["Flash", "MX 2004"];

var newArray = myArray;

Π—Π΄Π΅ΡΡŒ создаСтся массив myArray с двумя элСмСнтами ΠΈ Π΄Π°Π»Π΅Π΅ ΠΎΠ½ присваиваСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ newArray (ΠΏΡ€ΠΈ этом данная пСрСмСнная ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ссылку Π½Π° массив). Если ΠΏΠΎΡ‚ΠΎΠΌ ΠΌΡ‹ присвоим Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ элСмСнту массива myArray:

myArray[1] = "8";

ΠΈ обратимся ΠΊ Π½Π΅ΠΌΡƒ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ newArray:

s = newArray[1];

Ρ‚ΠΎ пСрСмСнная s ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ строку "8" β€” Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ элСмСнта этого массива. Π’. Π΅. фактичСски ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ myArray ΠΈ newArray ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ массив.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ познакомились с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, константами, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ, дСйствиями, простыми ΠΈ слоТными выраТСниями, функциями ΠΈ массивами. Π’Π΅ΠΏΠ΅Ρ€ΡŒ настала ΠΏΠΎΡ€Π° ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ самых слоТных структурах Π΄Π°Π½Π½Ρ‹Ρ… ActionScript β€” ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ….

ΠŸΠΎΠ½ΡΡ‚ΠΈΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ экзСмпляра

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ β€” это слоТный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π² сСбя мноТСство ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… β€” свойств β€” ΠΈ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для манипулирования значСниями этих ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… β€” ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Π—Π΄Π΅ΡΡŒ всС достаточно просто: свойства хранят Π½Π΅ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅, Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚, выдавая Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Ρ дСйствия с самим ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ имя, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΊ Π½Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ.

БобствСнно, сам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” это всСго лишь Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ числовой ΠΈΠ»ΠΈ строковый, Ρ‚. Π΅. Π½Π΅ΠΊΠΎΠ΅ абстрактноС описаниС, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π² сСбя Π½Π°Π±ΠΎΡ€ свойств ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². ΠžΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Π΅Π³ΠΎ "прСдставитСли" β€” экзСмпляры ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. НС ΠΏΡ€Π°Π²Π΄Π° Π»ΠΈ, Π½Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ аналогия ΠΎΠ±Ρ€Π°Π·Ρ†Π° ΠΈ созданных Π½Π° Π΅Π³ΠΎ основС экзСмпляров?

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΈΠΉ ΠΏΡ€ΠΈΠ±ΠΎΡ€, снабТСнный Π½Π°Π±ΠΎΡ€ΠΎΠΌ рСгуляторов ΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ. РСгуляторы Π·Π°Π΄Π°ΡŽΡ‚ значСния свойств, Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡ€ΠΈΠ±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° (экзСмпляр), Π²Ρ‹ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ значСния свойств с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ рСгуляторов ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ ΠΊΠ½ΠΎΠΏΠΊΡƒ, ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π² Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ устройство этого ΠΏΡ€ΠΈΠ±ΠΎΡ€Π° ΠΎΡ‚ нас скрыто, ΠΌΡ‹ Π½Π΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ Π½Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ, для нас Π²Π°ΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ выполнял свою Π·Π°Π΄Π°Ρ‡Ρƒ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ вСрнСмся ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ Π»ΡŽΠ±ΠΈΠΌΠΎΠΌΡƒ Flash. Π›ΡŽΠ±ΠΎΠΉ ΠΊΠ»ΠΈΠΏ Π½Π° Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ листС фактичСски являСтся экзСмпляром ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° movieClip (ΠΎΠ± этом ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π΄Π°Π»Π΅Π΅ Π² этой Π³Π»Π°Π²Π΅). ΠŸΡƒΡΡ‚ΡŒ имССтся ΠΊΠ»ΠΈΠΏ someClip, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ свойством width (ΡˆΠΈΡ€ΠΈΠ½Π°) ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ gotoAndPlay, Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΠΌ воспроизвСдСниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ этого ΠΊΠ»ΠΈΠΏΠ° с ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ ΠΊΠ°Π΄Ρ€Π°. Π’ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ сцСнарий:

someClip.width = 200;

someClip.gotoAndPlay(3);

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»ΠΈΡΡŒ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ΠΈ свойству ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° someClip, использовав ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ Π½Π°ΠΌ синтаксис "с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ". А ΠΈΠΌΠ΅Π½Π½ΠΎ, ΠΎΡ‚Π΄Π΅Π»ΠΈΠ»ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ имя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ свойства (ΠΌΠ΅Ρ‚ΠΎΠ΄Π°).

Π˜Ρ‚Π°ΠΊ, с Ρ‚Π΅ΠΎΡ€ΠΈΠ΅ΠΉ ΠΌΡ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ. ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊ практичСской Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ ΠΈΡ… экзСмплярами.

Π Π°Π±ΠΎΡ‚Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ ΠΈΡ… экзСмплярами

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с экзСмпляром ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° выполняСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° new:

<ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ> = new <Имя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°>([<Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми>])

ПослС создания экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ new Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° Π½Π΅Π³ΠΎ. Π­Ρ‚Π° ссылка, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, присваиваСтся ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ содСрТит значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ свойствам экзСмпляра ΠΏΡ€ΠΈ Π΅Π³ΠΎ создании. А Ρ‚ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ значСния ΠΊΠ°ΠΊΠΈΠΌ свойствам ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈΠ· описания Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ справкС Flash.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания экзСмпляра obj Π½Π΅ΠΊΠΎΠ΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° someObject:

var obj;

obj = new someObject(a, b);

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ свойствам ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ созданного экзСмпляра, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡƒΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ синтаксис "с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ":

obj.prop1 = 0;

Π° = obj.prop2 + 2;

obj.method1();

Иногда Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ содСрТит Π²Π½ΡƒΡ‚Ρ€ΠΈ сСбя Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅). Для обращСния ΠΊ свойствам ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΡ‚ ΠΆΠ΅ синтаксис, Π½ΠΎ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ, скаТСм Ρ‚Π°ΠΊ, "ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½ΠΎΠΉ ΡΡ‚Π°ΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ":

outerObject.innerObject.prop = 0;

Π³Π΄Π΅ outerObject β€” экзСмпляр внСшнСго ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ Π² своСм составС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹), a innerObject β€” экзСмпляр Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π΅ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ Π² Π΄Ρ€ΡƒΠ³Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², называСтся ΠΏΡƒΡ‚Π΅ΠΌ. Иногда ΠΏΡƒΡ‚ΡŒ Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ:

obj ectOuter.obj ectInner.obj ectInnerlnner.prop = 10;

Как ΠΈ Π² случаС массива, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ ссылку Π½Π° экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

obj 2 = obj;

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΉ экзСмпляр, слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ delete:

delete <ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ, содСрТащая ссылку Π½Π° экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°>;

НапримСр,

delete obj, obj 2;

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

Π—Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ² Ρ€Π°Π±ΠΎΡ‚Ρƒ с экзСмпляром ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, всСгда удаляйтС Π΅Π³ΠΎ. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ экзСмпляр расходуСт рСсурсы ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… всСгда Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ typeof Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ для экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° строку "object". Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ….

На Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ

ΠžΡ‡Π΅Π½ΡŒ часто Flash сам создаСт экзСмпляры ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ сам ΠΆΠ΅ ΠΈΡ… удаляСт. Π’ частности, ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ происходит с экзСмплярами ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Movieclip, Ρ‚. Π΅. ΠΊΠ»ΠΈΠΏΠ°ΠΌΠΈ.

НСсколько Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ самоС врСмя Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ нСсколько Π½ΠΎΠ²Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ дСйствий, примСняСмых ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ ΠΈΡ… экзСмплярами.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ instanceof провСряСт, являСтся Π»ΠΈ экзСмпляр экзСмпляром Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ соотвСтствСнно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true ΠΈΠ»ΠΈ false. Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π΅Π³ΠΎ записи Ρ‚Π°ΠΊΠΎΠΉ:

<ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ> = <ЭкзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°> instanceof <ΠžΠ±ΡŠΠ΅ΠΊΡ‚>;

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ экзСмпляр задаСтся Π² Π²ΠΈΠ΄Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, содСрТащСй ссылку Π½Π° Π½Π΅Π³ΠΎ, Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” Π² Π²ΠΈΠ΄Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

if (obj instanceof someObject).

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова for ΠΈ in слуТат для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° просмотра, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС свойства экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Он Ρ‚Π°ΠΊΠΆΠ΅ называСтся "Ρ†ΠΈΠΊΠ»ΠΎΠΌ for-in" ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ записи:

for (<ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ-ссылка Π½Π° свойство> in <ЭкзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°>)

<Π’Π΅Π»ΠΎ Ρ†ΠΈΠΊΠ»Π°>

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ-ссылка Π½Π° свойство ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ³ΠΎ свойства экзСмпляра. Π­Ρ‚Ρƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для получСния доступа ΠΊ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΌΡƒ свойству.

for (k in obj) {

k = ' ' + k + ' ';

}

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ сцСнария просматриваСт всС свойства экзСмпляра obj ΠΈ добавляСт ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ слСва ΠΈ справа. (ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ значСния всСх свойств этого экзСмпляра ΠΈΠΌΠ΅ΡŽΡ‚ строковый Ρ‚ΠΈΠΏ.)

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово with позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ActionScript, Ссли Π² Π½ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ свойства ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Рассмотрим Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅.

НапишСм нСсколько Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΊ свойствам ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ экзСмпляра ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°:

someObject.propl = 1;

someObject.prop2 = 2;

someObj ect.prop3 = 3;

someObj ect.method1;

КакиС Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ строки Ρƒ этих Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ! А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡˆΠ΅ΠΌ ΠΈΡ…, использовав ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово with:

with (someObject){

propl = 1;

prop2 = 2;

prop3 = 3;

methodl;

}

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ сразу стал ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅Π΅. И быстрСС, кстати говоря.

ВстроСнныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ActionScript

ВстроСнными Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² самом языкС ActionScript. Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны ΠΈΡ… ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅ описания ΠΈ Π΄Π°Π½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования. ПолноС описаниС всСх этих ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ справкС Flash.

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ языка ActionScript являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… β€” строковый, числовой, логичСский β€” ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ со строками, числами ΠΈ логичСскими Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ с экзСмплярами ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… свойства. Π›ΡŒΠ²ΠΈΠ½Π°Ρ доля встроСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ActionScript ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ "ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚" Π·Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ΅ прСдставлСниС ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….