Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs

Π‘ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Ρ‹ΠΉ язык для web-страниц VBScript

VBScript для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Visual Basic Script для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… программистов особой слоТности Π½Π΅ прСдставляСт. Достаточно ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ особСнности языка ΠΈ ΡƒΠ·Π½Π°Ρ‚ΡŒ отличия ΠΌΠ΅ΠΆΠ΄Ρƒ VBScript ΠΈ Visual Basic, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ VBScript ΠΈ VBA. Однако полная докумСнтация имССтся, Π² основном, Π½Π° английском языкС. Π”Π° ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅ΠΌΡƒ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² Π½Π΅ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ нСпросто. И Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ Π²Π·ΡΡ‚ΡŒΡΡ Π·Π° VBScript, Ρ‚ΠΎ прСдставлСнная Π½ΠΈΠΆΠ΅ ΠΊΠ½ΠΈΠ³Π° Π²Π°ΠΌ Π² этом ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚.

Π“Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ VBScript? ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ довольно ΠΌΠ½ΠΎΠ³ΠΎ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠ± этом Π²Ρ‹ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠ½ΠΈΠ³Π΅. А Ссли ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Visual Basic Script для написания сцСнариСв, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ» ΠΈ Π·Π°Ρ‚Π΅ΠΌ с ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. НапримСр, очистку диска ΠΎΡ‚ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

ΠšΡ€ΠΎΠΌΠ΅ этого сцСнарии ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π² Π²Π΅Π±-страницы. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ VBScript являСтся, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, самым простым Π² освоСнии языком сцСнариСв, Ρ‚ΠΎ ΠΎΠ½ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… прилоТСниях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ SCADA-систСмы. НапримСр, SCADA-систСма Reliance ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ язык Visual Basic Script, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ спСцифичСскими для Π΄Π°Π½Π½ΠΎΠΉ систСмы функциями.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ содСрТаниС ΠΊΠ½ΠΈΠ³ΠΈ. НСкоторыС Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ нСпосрСдствСнно Π½Π° этом сайтС. Книга ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π°, поэтому Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ пСриодичСски Π·Π°Π³Π»ΡΠ΄Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° эту страницу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ VBScript Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ собствСнныС страницы ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρ‹. И всС это размСщаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ вашСго HTML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Если Π²Ρ‹ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»ΠΎ с Visual Basic ΠΈΠ»ΠΈ Visual Basic for Applications, Ρ‚ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠΏΡ€Π°Π²ΠΈΡ‚Π΅ΡΡŒ ΠΈ с VBScript.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ скриптов

ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ прилоТСния Π½Π° VBScript Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ этого языка, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Ρ‚ΡŒ прСдставлСниС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, события ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π² дальнСйшСм Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Internet Explorer 3.0 ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ActiveX. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ VBScript связаны Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ.

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹


Π’ΠΈΠ΄Ρ‹ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ функция Celsius ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ градусы Π€Π°Ρ€Π΅Π½Π³Π΅ΠΉΡ‚Π° Π² градусы ЦСльсия. Когда вызываСтся функция ΠΈΠ· ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ConvertTemp, пСрСмСнная, содСрТащая ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, пСрСдаСтся Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ вычислСния возвращаСтся Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΈ отобраТаСтся Π² MsgBox.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ вмСсто ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ссли трСбуСтся Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

ИспользованиС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Для примСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ справа ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ выраТСния, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ссли ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Call Π½Π΅ примСняСтся.

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


ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ модСль

Рассмотрим ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ActiveX Label (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ элСмСнт управлСния для VBScript фактичСски ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅). Он состоит ΠΈΠ· свойств ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄. НСкоторыС ΠΈΠ· Π΅Π³ΠΎ свойств Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ (Caption), Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° (BackColor), Ρ†Π²Π΅Ρ‚ ΡˆΡ€ΠΈΡ„Ρ‚Π° (ForeColor), Ρ€Π°Π·ΠΌΠ΅Ρ€ (FontSize) ΠΈ ΡΡ‚ΠΈΠ»ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚Π° (FontName). Π•Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ являСтся About Box, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΎΠΊΠ½ΠΎ с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ± ActiveX. Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ΠΌ для Label являСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ указатСля ΠΌΡ‹ΡˆΠΈ Π½Π°Π΄ Label. БущСствуСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚Π΅Π³

. Если Π²Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»ΠΎ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½Π° Visual Basic, Ρ‚ΠΎ использованиС Ρ‚Π΅Π³ΠΎΠ²

Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ Π²Π°ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈΠ»ΠΈ элСмСнта управлСния Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅. НапримСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния Ρ‚Π΅Π³ΠΎΠ²

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ свойства, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ с Π»ΡŽΠ±Ρ‹ΠΌ срСдством управлСния Ρ„ΠΎΡ€ΠΌΠΎΠΉ. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ тСкст, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ элСмСнты

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ cmdChangeIt измСняСт тСкст ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Label:

ΠŸΡ€ΠΈ интСнсивном ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Microsoft ActiveX Control Pad, Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΡƒΡŽ связываниС ΠΊΠΎΠΌΠ°Π½Π΄ Visual Basic с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ событиями ΠΈ элСмСнтами управлСния Π½Π° вашСй страничкС. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ большС внимания ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π½Π° сам процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прилоТСния.

Установка свойств для элСмСнтов управлСния ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

Установка свойств для Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° страницС являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° VBScript. Бтандартная схСма этого дСйствия выглядит Ρ‚Π°ΠΊ:

Бвойству Caption (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ) присваиваСтся строка «Watch me change!». Π—Π°Ρ‚Π΅ΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ свойства ForeColor (Ρ†Π²Π΅Ρ‚ тСкста), BackColor (Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°) ΠΈ FontName (ΡΡ‚ΠΈΠ»ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚Π°). Π’Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ свойства для любого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° страницС.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий

FOR опрСдСляСт имя элСмСнта управлСния ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄; EVENT Π·Π°Π΄Π°Π΅Ρ‚ событиС, ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ исходного тСкста ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±Π° рассмотрСнных ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ события ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ΄Π°:

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ· сцСнария:

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ модСль Internet Explorer 3.0

Π’Π°Π±Π»ΠΈΡ†Π° 1.
Бвойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Window.

БвойствоНазначСниС
FramesΠ˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ сущСствуСт Π½Π°Π±ΠΎΡ€ ΠΊΠ°Π΄Ρ€ΠΎΠ² (Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ²). Π­Ρ‚ΠΎ свойство являСтся массивом Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² Π½Π° страницС
LocationΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ мСстополоТСниС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΎΠΊΠ½Π°
NameИмя Ρ‚ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, Ρ‡ΡŒΠΈ свойства ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ
ParentΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Ρ„Ρ€Π΅ΠΉΠΌ ΠΈΠ»ΠΈ ΠΎΠΊΠ½ΠΎ, Ρ‡ΡŒΠΈ свойства ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚

Π’Π°Π±Π»ΠΈΡ†Π° 2.
НСсколько основных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Window.

Π’Π°Π±Π»ΠΈΡ†Π° 3.
Бобытия Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Window.

БобытиСНазначСниС
OnLoadВызываСтся, ΠΊΠΎΠ³Π΄Π° загруТаСтся страница, содСрТащая Π΄Π°Π½Π½ΠΎΠ΅ событиС. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² тэгС ΠΊΠ°ΠΊ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹
OnUnLoadВызываСтся, ΠΊΠΎΠ³Π΄Π° выгруТаСтся страница, содСрТащая Π΄Π°Π½Π½ΠΎΠ΅ событиС. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² тэгС ΠΊΠ°ΠΊ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

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

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Document ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π΅Π»ΠΎ ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго с Ρ‚Π΅Π»ΠΎΠΌ HTML-страницы. Он ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°: Link, Anchor ΠΈ Form, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… являСтся индСксированным массивом ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² link, anchor ΠΈ form. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Form содСрТит ΠΏΠΎΠ΄ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Element, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся индСксированным массивом всСх ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ элСмСнтов управлСния Π½Π° страницС. НСкоторыС Π²Π°ΠΆΠ½Ρ‹Π΅ свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ пСрСчислСны Π² Ρ‚Π°Π±Π». 4. Для Document, Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Π½Π΅ сущСствуСт Π½ΠΈΠΊΠ°ΠΊΠΈΡ… событий.

Π’Π°Π±Π»ΠΈΡ†Π° 4.
НСкоторыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Document.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΠ°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
BgColorУстанавливаСт Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Π­Ρ‚ΠΎΡ‚ Ρ†Π²Π΅Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ прСдставлСниС #rrggbb ΠΈΠ»ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅
FgColorУстанавливаСт Ρ†Π²Π΅Ρ‚ тСкста Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. АналогичСн ΠΏΠΎ функциям свойству BgColor
ReferrerΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ URL Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ссылаСтся ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² настоящСС врСмя. НапримСр, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ обратился ΠΏΠΎ адрСсу: http://www.nm.org/welcome.htm с сСрвСра http://www.someplace.com, Ρ‚ΠΎ свойством Referrer Π±ΡƒΠ΄Π΅Ρ‚: http://www.someplace.com, Ссли это свойство Π±Ρ‹Π»ΠΎ Π² страницС Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΠΎΠ³ΠΎ располоТСния; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΎΠ½ΠΎ обращаСтся Π² Null
LastModifiedΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Π°Ρ‚Ρƒ послСднСй ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°
OpenΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ для записи Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… строк Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ HTML. Бинтаксис: document.open()
WriteЗаписываСт HTML-тСкст Π² Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ открываСтся для записи. Бинтаксис: document.write(somestring), Π³Π΄Π΅ somestring ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΉ строкой, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΆΠ΅ нСсколькими связанными строками Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ HTML, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ выводятся Π½Π° экран
CloseΠ—Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π»ΠΈ мСсто ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹: document.write, document.close.

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


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

Основной Ρ†Π΅Π»ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° History являСтся доступ ΠΊ списку Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… адрСсов Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°ΠΏΠΊΠ΅ History. НаиболСС Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ пСрСчислСны Π² Ρ‚Π°Π±Π». 5. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ History Π½Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… событий.

Π’Π°Π±Π»ΠΈΡ†Π° 5.
НСкоторыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° History.

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

Π­Ρ‚ΠΎΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ располоТСния Internet Explorer. НаиболСС Π²Π°ΠΆΠ½Ρ‹Π΅ свойства пСрСчислСны Π² Ρ‚Π°Π±Π». 6. Π­Ρ‚ΠΎΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… событий ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

Π’Π°Π±Π»ΠΈΡ†Π° 6.
НаиболСС Π²Π°ΠΆΠ½Ρ‹Π΅ свойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Location.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

VBScript. ΠžΡΠ½ΠΎΠ²Ρ‹ VBScript

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠžΡΠ½ΠΎΠ²Ρ‹ VBScript

Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…

Π’ языкС VBScript ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ СдинствСнный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… – Variant (Π’Π°Ρ€ΠΈΠ°Π½Ρ‚), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ число, строку, Π΄Π°Ρ‚Ρƒ, булСвскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ содСрТимого ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°Π±ΠΎΡ€Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ: VarType, TypeName, IsArray, IsDate, IsEmpty, IsNull, IsNumeric, IsObject, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны Π½ΠΈΠΆΠ΅. Π’ΠΈΠΏ содСрТащСйся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π΅Ρ‰Π΅ называСтся ΠΏΠΎΠ΄Ρ‚ΠΈΠΏΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°. ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΏΠΎΠ΄Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅:

DoubleЧисло с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ точности. Для ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ допустимый Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ‚

Date (Time)Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ число, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π΄Π°Ρ‚Ρƒ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 1-Π³ΠΎ января 100 Π³ΠΎΠ΄Π°, Π΄ΠΎ 31 дСкабря 9999 Π³ΠΎΠ΄Π°.StringΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов. Максимальная Π΄Π»ΠΈΠ½Π° Π² Ρ€Π°ΠΉΠΎΠ½Π΅ 2-Ρ… ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄ΠΎΠ² Π·Π½Π°ΠΊΠΎΠ².ObjectΠžΠ±ΡŠΠ΅ΠΊΡ‚.ErrorНомСр ошибки.

Π’ зависимости ΠΎΡ‚ выраТСния, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ участвуСт пСрСмСнная, Π΅Π΅ содСрТимоС Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ. Рассмотрим Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ участвуСт числовая пСрСмСнная A, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ B ΠΈΠ· строки «12» Π² число ΠΈ просуммируСт ΠΈΡ…:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs

ИзмСним макрос Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ пСрСмСнная А Ρ‚ΠΎΠΆΠ΅ содСрТала строку:

Запустим Π΅Π³ΠΎ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π° экранС появится Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ слияния (ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Ρ†ΠΈΠΈ) Π΄Π²ΡƒΡ… строк, Π° Π½Π΅ сумма ΠΈΡ… числовых прСдставлСний:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт vbs

Π’ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠΈ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹ с автоматичСским ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠΎΠ², рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ конвСрсии: CBool, CByte, CCur, CDate, CDbl, CInt, CLng, CSng, CStr.

Если Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ выраТСния Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ слияниС строк, Π° Π½Π΅ сумма ΠΈΡ… числовых прСдставлСний, Ρ‚ΠΎ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ & вмСсто +.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ – это ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ символьноС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ области памяти, Π³Π΄Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. Π’ процСссС выполнСния прилоТСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ. ΠŸΠ΅Ρ€Π΅Π΄ использованиСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ слСдуСт ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Dim.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ сразу нСсколько ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ссли ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΠΈΡ… ΠΈΠΌΠ΅Π½Π° Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ:

ΠŸΡ€ΠΈ объявлСнии Π½Π΅Ρ‚ нСобходимости Π² ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΈΠΏ Variant.

Если Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС тСкста скрипта Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Option Explicit, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· объявлСния. Но, Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡƒΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ выявимым ошибкам. Достаточно ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΎΡˆΠΈΠ±ΠΈΡ‚ΡŒΡΡ Π² написании ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² тСкстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ нСпрСдсказуСмый Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ всСгда ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Option Explicit ΠΈ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

Имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ трСбованиям:

ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости ΠΈ врСмя ΠΆΠΈΠ·Π½ΠΈ

Π’ Π΄Π΅Ρ€Π΅Π²Π΅ ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ° ΠΎΠΊΠ½Π° Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° скрипт-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² присутствуСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» – ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ – для объявлСния Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… для всСх скрипт-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ выдСляСт ΠΏΠ°ΠΌΡΡ‚ΡŒ для Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΡ… объявлСния ΠΈ высвобоТдаСт ΠΏΠΎ Π²Ρ‹Ρ…ΠΎΠ΄Ρƒ ΠΈΠ· ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΈΡ… объявлСния ΠΈ ΠΏΠΎΠΊΠ° скрипт Π½Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ своС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π“Π΅Π΄Ρ‹ΠΌΠΈΠ½Ρƒ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π° протяТСнии всСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ объявлСнной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ присваиваСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° =. Имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ указываСтся слСва ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ – справа. НапримСр:

БкалярныС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ массивы

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ содСрТащая СдинствСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ называСтся скалярной. Иногда, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π’ этом случаС слСдуСт ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ массив. Бинтаксис объявлСния ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½ объявлСнию скалярной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π° Ρ‚Π΅ΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ послС ΠΈΠΌΠ΅Π½ΠΈ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках ΠΌΡ‹ Π·Π°Π΄Π°Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ массива. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ объявлСниС создаст массив ΠΈΠ· 12 элСмСнтов:

Π’ языкС VBScript лСвая Π³Ρ€Π°Π½ΠΈΡ†Π° индСкса массива всСгда 0. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ массива вычисляСтся, ΠΊΠ°ΠΊ число ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² скобках плюс ΠΎΠ΄ΠΈΠ½. ΠŸΡ€ΠΈ присваивании значСния элСмСнту массива слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π³ΠΎ индСкс Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках:

Аналогично, ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ элСмСнта ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π΅Π³ΠΎ индСкс:

Массив Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌ. VBScript позволяСт Π½Π°ΠΌ Π·Π°Π΄Π°Ρ‚ΡŒ Π΄ΠΎ 60 размСрностСй ΠΏΡ€ΠΈ объявлСнии массива. НапримСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ создаст Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив ΠΈΠ· 12 строк ΠΈ Π΄Π²ΡƒΡ… ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ [2] :

ΠŸΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ элСмСнтам ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ массива слСдуСт ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ всС индСксы:

Π’Ρ‹ΡˆΠ΅ ΠΌΡ‹ объявляли массивы, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ мСняСтся Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Если Π·Π°Ρ€Π°Π½Π΅Π΅ Π½Π΅ извСстно сколько элСмСнтов понадобится, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ динамичСский массив:

ΠŸΠ΅Ρ€Π΅Π΄ использованиСм слСдуСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ динамичСского массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ReDim:

Π’ процСссС выполнСния ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ReDim ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· измСняя Ρ€Π°Π·ΠΌΠ΅Ρ€ массива. ΠžΠΏΡ†ΠΈΡ Preserve сохраняСт значСния элСмСнтов массива ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. НапримСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ массив Π½Π° ΠΏΡΡ‚ΡŒ элСмСнтов, оставив ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π΅Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹ΠΌΠΈ:

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° массива, значСния ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… элСмСнтов Π±ΡƒΠ΄ΡƒΡ‚ Π±Π΅Π·Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½ΠΎ утСряны. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Erase ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ элСмСнты фиксированного массива ΠΈΠ»ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡƒΡŽ динамичСским массивом.

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹

НСсколько констант ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ. Как ΠΈ пСрСмСнная, константа ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ своСй ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ видимости Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π³Π΄Π΅ (Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ ΠΈΠ»ΠΈ Π·Π° Π΅Π΅ ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ) ΠΈ ΠΊΠ°ΠΊ (Public ΠΈΠ»ΠΈ Private) ΠΎΠ½Π° Π±Ρ‹Π»Π° объявлСна. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹, созданныС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ Const Π±Π΅Π· указания Public ΠΈΠ»ΠΈ Private ΡΠ²Π»ΡΡŽΡ‚ΡΡ общСдоступными ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π’ Π΄Π΅Ρ€Π΅Π²Π΅ ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ° ΠΎΠΊΠ½Π° Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° скрипт-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² присутствуСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» – ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ – для объявлСния Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… констант, Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… для всСх скрипт-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ЗначСния строковых констант Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ.

ЗначСния Ρ‚ΠΈΠΏΠ° Π”Π°Ρ‚Π° слСдуСт ΠΎΠ±Ρ€Π°ΠΌΠ»ΡΡ‚ΡŒ символами Ρ€Π΅ΡˆΠ΅Ρ‚ΠΊΠΈ (#) ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ амСриканский Ρ„ΠΎΡ€ΠΌΠ°Ρ‚: мСсяц/дСнь/Π³ΠΎΠ΄. НапримСр:

Π’ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ константами ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ прСфикс для всСх констант, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ «con», ΠΈΠ»ΠΈ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ имя константы Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС.

Для облСгчСния Ρ‚Ρ€ΡƒΠ΄Π° программиста VBScript содСрТит Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… констант.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ VBScript ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π½Π° ΠΏΡΡ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ: арифмСтичСскиС, сравнСния, слияния, логичСскиС ΠΈ присваивания.

АрифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния

Π€ΠΎΡ€ΠΌΠ°Ρ‚ использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² сравнСния:

Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния: (большС), >= (большС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ), = (Ρ€Π°Π²Π½ΠΎ), <> (Π½Π΅ Ρ€Π°Π²Π½ΠΎ).

Π’ зависимости ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², сравнСниС осущСствляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ЕслиВо
Оба ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° числа.ВыполняСтся сравнСниС Π΄Π²ΡƒΡ… чисСл.
Оба ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° строки.ВыполняСтся сравнСниС Π΄Π²ΡƒΡ… строк.
Один ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² число, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ строка.Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ приводится ΠΊ числу ΠΈ выполняСтся сравнСниС Π΄Π²ΡƒΡ… чисСл.
Один ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Empty, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ число.ΠžΠΏΠ΅Ρ€Π°Π½Π΄ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Empty принимаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ 0.
Один ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Empty, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ строка.ΠžΠΏΠ΅Ρ€Π°Π½Π΄ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Empty принимаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ пустой строкС «». ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ΅Ρ‚ΡΡ сравнСниС Π΄Π²ΡƒΡ… строк.
Оба ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Empty.ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ.
Π₯отя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Null.Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Null.

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Is примСняСтся для сравнСния Π΄Π²ΡƒΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π˜ΡΡ‚ΠΈΠ½Ρƒ, Ссли ΠΎΠ±Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ΠΆΠ΅ экзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Ρ†ΠΈΠΈ

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ находятся Π΄Π²Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°: + ΠΈ &. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описан Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «ΠΡ€ΠΈΡ„мСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹» Π²Ρ‹ΡˆΠ΅. Рассмотрим использованиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° &.

Если ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π½Π΅ являСтся строкой, ΠΎΠ½ приводится ΠΊ строковому Ρ‚ΠΈΠΏΡƒ. Если ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Null, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Null, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Null, Ρ‚ΠΎ ΠΎΠ½ принимаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ пустой строкС. ΠžΠΏΠ΅Ρ€Π°Π½Π΄, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Empty, Ρ‚Π°ΠΊΠΆΠ΅ воспринимаСтся ΠΊΠ°ΠΊ пустая строка «».

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

VBScript прСдоставляСт Π½Π°ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹:

Π’ качСствС ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ булСвскиС выраТСния ΠΈΠ»ΠΈ числовыС значСния. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ булСвская константа, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ – число. Π’ зависимости ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΏΠΎΠ΄Π°Ρ‡Π° Π½Π° Π²Ρ…ΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π΄Π²ΡƒΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Null ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Null Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Not являСтся ΡƒΠ½Π°Ρ€Π½Ρ‹ΠΌ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ логичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅ выраТСния. Над числовым ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Not ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΡƒΡŽ ΠΈΠ½Π²Π΅Ρ€ΡΠΈΡŽ. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΌΠΈ. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π² зависимости ΠΎΡ‚ значСния ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² Exp1 ΠΈ Exp2:

Exp1Exp2AndOrXorEqvImp
TrueTrueTrueTrueFalseTrueTrue
TrueFalseFalseTrueTrueFalseFalse
FalseTrueFalseTrueTrueFalseTrue
FalseFalseFalseFalseFalseTrueTrue
TrueNullNullTrueNullNullNull
FalseNullFalseNullNullNullTrue
NullTrueNullTrueNullNullTrue
NullFalseFalseNullNullNullNull
NullNullNullNullNullNullNull

Π’ ΠΆΠΈΠ·Π½ΠΈ Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ And ΠΈ Or ΠΈ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ€Π΅ΠΆΠ΅ – Xor. Нам Π½Π΅ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Ρ‚ΡŒΡΡ с использованиСм Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Eqv ΠΈ Imp. Если Π²Π°ΠΌ тяТСло Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Ρ€Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΠ΅ΠΌ дСйствиС Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

ΠŸΡ€ΠΈ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π°Π΄ числовыми ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ логичСского ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° опрСдСляСтся ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅:

Exp1Exp2AndOrXorEqvImp
0000011
0101101
1001100
1111011

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания (=) ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описан Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅».

ΠžΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΡΡ‚ΡŒ примСнСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²

Если Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ содСрТит нСсколько ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² соотвСтствии с установлСнным порядком, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ порядок ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок. Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ скобок всСгда вычисляСтся Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ.

Если ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² порядкС слСдования слСва-Π½Π°ΠΏΡ€Π°Π²ΠΎ. АналогичноС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ дСйствуСт Π² случаС ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ присутствия ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² слоТСния ΠΈ вычитания.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ слияния строк (&) Π½Π΅ являСтся арифмСтичСским ΠΈ ΠΏΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρƒ располагаСтся ΠΌΠ΅ΠΆΠ΄Ρƒ арифмСтичСскими ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ сравнСния.

ΠžΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΡΡ‚ΡŒ для логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² установлСна ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ:

УсловныС выраТСния

УсловныС выраТСния ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для управлСния порядком выполнСния ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ (вСтвлСния) ΠΈ повторСния ΠΊΠΎΠΌΠ°Π½Π΄. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ вмСстС с условными выраТСниями.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ If..Then..Else

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ условного ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° If позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ ΠΊΠΎΠΌΠ°Π½Π΄ Π² зависимости ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° логичСского выраТСния ΠΈΠ»ΠΈ значСния булСвской ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Для выполнСния СдинствСнной ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ условия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ однострочный синтаксис выраТСния:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ сСкция Else Π² этом случаС ΠΎΠΏΡƒΡ‰Π΅Π½Π°. Для выполнСния Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² слСдуСт Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΡ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ словами Then ΠΈ End If.

Если ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ условия трСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ΄, Π° ΠΏΡ€ΠΈ Π½Π΅Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ – Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ синтаксис выраТСния с сСкциСй Else:

ΠŸΡ€ΠΈ нСобходимости Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ² ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ синтаксис с конструкциСй ElseIf:

ВыраТСния If ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ:

Π₯отя количСство сСкций ElseIf Π² условном Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ, интСнсивноС ΠΈΡ… использованиС ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½ΠΎΠΌΡƒ, Π½Π΅ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ. Π’ случаС Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠ΄Π½ΠΎΠΉ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ ΠΈΠ· мноТСства Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π² зависимости ΠΎΡ‚ значСния Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сСлСктора рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Select Case.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Select..Case

ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡˆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с днями Π½Π΅Π΄Π΅Π»ΠΈ с использованиСм выраТСния Π²Ρ‹Π±ΠΎΡ€Π°:

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ сСлСктора вычисляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, использованиС Select..Case ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π±ΠΎΠ»Π΅Π΅ эффСктивному ΠΊΠΎΠ΄Ρƒ. РСкомСндуСтся всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ΅ΠΊΡ†ΠΈΡŽ Case Else для отлавливания Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ сСлСктора.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ†ΠΈΠΊΠ»Π°

Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ трСбуСтся Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ. Для этого слСдуСт Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ†ΠΈΠΊΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ повторяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ снова ΠΈ снова. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ†ΠΈΠΊΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ситуациях: ΠΏΡ€ΠΈ вычислСнии ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠΉ суммы ΠΏΠΎ списку чисСл, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ ΠΏΠΎ записям Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ для запуска Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². БущСствуСт нСсколько Ρ†ΠΈΠΊΠ»ΠΎΠ², описанных Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ…. НСкоторыС ΠΈΠ· Π½ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ, ΠΏΠΎΠΊΠ° условиС ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π˜ΡΡ‚ΠΈΠ½Π°, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ – ΠΏΠΎΠΊΠ° Π›ΠΎΠΆΡŒ. И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ число Ρ€Π°Π·.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Do..Loop

Π”Π°Π½Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для выполнСния Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎΠΊΠ° Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ условиС Π˜ΡΡ‚ΠΈΠ½Π½ΠΎ ΠΈΠ»ΠΈ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ Π½Π΅ станСт Π˜ΡΡ‚ΠΈΠ½Π½Ρ‹ΠΌ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° условия ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ†ΠΈΠΊΠ»Π°:

Команда Exit Do ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ число Ρ€Π°Π· Π² Ρ‚Π΅Π»Π΅ Ρ†ΠΈΠΊΠ»Π°. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ вмСстС с условным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ If..Then ΠΈ позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ нСпосрСдствСнно Π·Π° Ρ†ΠΈΠΊΠ»ΠΎΠΌ. ΠŸΡ€ΠΈ использовании Exit Do Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ Π²ΠΎ внСшний Ρ†ΠΈΠΊΠ».

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ позволяСт Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΡƒΠ±ΠΈΠΊ:

While..Wend

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ собой ΡƒΡΠ΅Ρ‡Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Do..Loop ΠΈ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡƒ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎΠΊΠ° условиС Π˜ΡΡ‚ΠΈΠ½Π½ΠΎ. Бинтаксис ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Exit Do Π½Π΅ дСйствуСт Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°. Π¦ΠΈΠΊΠ»Ρ‹ While..Wend ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ.

For..Next

Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» повторяСт Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ число Ρ€Π°Π·. Бинтаксис ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΈΠ΄:

ΠŸΠ΅Ρ€Π΅Π΄ стартом Ρ†ΠΈΠΊΠ»Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ counter присваиваСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ start. Π”Π°Π»Π΅Π΅ провСряСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ условия counter = 0, ΠΈΠ»ΠΈ counter >= end, ΠΏΡ€ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ шагС. ПослС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄ пСрСмСнная counter увСличиваСтся Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ step ΠΈ всС повторяСтся сначала.

ИзмСнСниС счСтчика Π² Ρ‚Π΅Π»Π΅ Ρ†ΠΈΠΊΠ»Π° Π½Π΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ, Π½ΠΎ Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ рСкомСндуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ затрудняСт ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΅Π΅ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ.

Exit For ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Ρ‚ΡŒΡΡ Π² Ρ‚Π΅Π»Π΅ Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ число Ρ€Π°Π·. Π¦ΠΈΠΊΠ»Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ. НапримСр, Ρ‚Π°ΠΊΠΎΠΉ Ρ†ΠΈΠΊΠ» ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив:

For Each..Next

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Ρ†ΠΈΠΊΠ»Π° For Each..Next повторяСт Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта массива ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

Π¦ΠΈΠΊΠ» выполняСтся, Ссли Π² массивС ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ присутствуСт хотябы ΠΎΠ΄ΠΈΠ½ элСмСнт. Exit For ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Ρ‚ΡŒΡΡ Π² Ρ‚Π΅Π»Π΅ Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ количСство Ρ€Π°Π·.

ΠŸΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ использованиС For Each..Next Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран список Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ· ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° диска с:\

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

Public ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ доступны Π²ΠΎ всСх скриптах ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Private ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ доступны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ скриптС, Π³Π΄Π΅ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹. Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ ΠΈΠ½ΠΎΠ΅, объявлСнная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° являСтся общСдоступной. ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Default ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚Π΅Π»Π΅ класса ΠΈ слуТит для указания ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ этого класса.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ (ByVal) ΠΈΠ»ΠΈ ΠΏΠΎ ссылкС (ByRef). По-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ вычислСния Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. ИзмСнСниС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎ ссылкС, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ измСнСнию значСния Π½Π°Ρ€ΡƒΠΆΠ½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Поясним ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π»Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°ΡŽΡ‚ΡΡ ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π΅Π΅ выполнСния. ЗначСния Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π½Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Execute

ΠšΠ»Π°ΡΡΡ‹ VBScript

VBScript позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ классы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² дальнСйшСм ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ VB классами. Π’ΠΎΠΎΠ±Ρ‰Π΅ говоря, ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΌΠΈ классами Π² ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования ΠΎΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ наслСдованиС ΠΈ, соотвСтствСнно, ΠΏΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… ΠΊΠΈΡ‚ΠΎΠ², Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… базируСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ориСнтированная ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ° остаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ инкапсуляция β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠΉ сущности Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ класса осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ конструкции:

Π³Π΄Π΅ name β€” это имя класса, Π° statements β€” это ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, свойств, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Ρ‚Π°ΠΊ ΠΆΠ΅ Ρ‡Π»Π΅Π½Π°ΠΌΠΈ класса. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Delphi, Π³Π΄Π΅ ΠΊΠΎΠ΄ опрСдСлСния класса содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ объявлСния ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π² VB классС ΠΊΠΎΠ΄ Ρ‡Π»Π΅Π½ΠΎΠ² прописываСтся прямо Π² тСкстС класса.

Π§Π»Π΅Π½Ρ‹ класса ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ ΠΊΠ°ΠΊ Private ΠΈΠ»ΠΈ Public. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π²ΠΈΠ΄Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ΄Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ класса, Π²Ρ‚ΠΎΡ€Ρ‹Π΅ ΠΆΠ΅ доступны ΠΊΠ°ΠΊ для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ ΠΈ снаруТи. Если пСрСмСнная ΠΈΠ»ΠΈ функция (ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°) Π½Π΅ содСрТат явного опрСдСлСния Public ΠΈΠ»ΠΈ Private, Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ общСдоступными. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ Public Π²Π½ΡƒΡ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠ° класса становятся ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ класса.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ общСдоступныС, становятся свойствами класса Π½Π°Ρ€Π°Π²Π½Π΅ со свойствами ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌΠΈ нСпосрСдствСнно с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ конструкций Property Get, Property Let, Property Set.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ свойств класса

Π’Ρ‹ΡˆΠ΅ ΠΌΡ‹ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ поля класса явно ΠΈΠ»ΠΈ Π½Π΅ явно ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ Public, становятся Π΅Π³ΠΎ свойствами. ΠšΡ€ΠΎΠΌΠ΅ этого, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свойство класса ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для считывания значСния свойства (Property Get), Π° Ρ‚Π°ΠΊΠΆΠ΅ для Π΅Π³ΠΎ присвоСния (Property Let ΠΈΠ»ΠΈ Property Set).

Бинтаксис опрСдСлСния Ρ‚Π°ΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, считывания ΠΈΠ»ΠΈ присвоСния, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свойство, соотвСтствСнно, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния ΠΈΠ»ΠΈ записи. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Property Let ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для присвоСния простых Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Π° Property Set для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ всС Ρ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π½Π° Π²Ρ…ΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, свойства-массивы, пСрСдавая Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° индСкс элСмСнта.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ экзСмпляра VB класса

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экзСмпляра VB класса осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° New.

Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π½Π΅Π΅ созданного экзСмпляра происходит автоматичСски ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°, Π³Π΄Π΅ Π±Ρ‹Π»Π° объявлСна ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΠ²ΡƒΡŽΡ‰Π°Ρ пСрСмСнная ΠΈ ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ Π½Π° Π½Π΅Π΅ Π½Π΅Ρ‚ Π²Π½Π΅ΡˆΠ½ΠΈΡ… ссылок. Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ экзСмпляр Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Nothing ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Бобытия Initialize ΠΈ Terminate

Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ Initialize происходит ΠΏΡ€ΠΈ создании экзСмпляра класса, Π° Terminate β€” ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ свои ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… событий. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования событий создания ΠΈ удалСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *