هي لغة سكريبت (نصية) تعمل في بيئة إنترنت وإنترانت، وتتشابه في مفاهيمها البرمجية مع لغة فيجوال بيسك مع بعض التعديلات التي تتلاءم مع طبيعتها المتعاملة مع الإنترنت . الـ VB Script هي اختصار لـ Visual Basic Scripting Edition
فهرس |
ظهرت هذه اللغة المبسطة المشتقة من اللغة الأم Visual Basic اثر ظهور JavaScript المعقدة بعض الشيء، والتي أنشئت لحل مشكلة بطأ تبادل البيانات بين الخادم وجهاز العميل إذ تأخذ عملية طلب المعلومات من جهاز العميل وإرسالها للخادم ومعالجاتها وإعادة إرسالها زمناً ليس بالقصير، حيث تتميز بإمكانيتها معالجة البيانات على الجهاز العميل .
تتحكم الـVB Script بالصفحات بشكل أوسع مما تتحكم بها لغة الـ HTML ، فيمكن إضافة بعض المميزات بواسطتها لتسمح للمستخدم بالتفاعل مع الصفحات ، مثال ذلك :
أما لغة الـHTML فتتميز بكونها لغة عرض فقط ، بمعنى أن مانكتبه في الصفحة سيظهر لنا عند العرض كبرنامج الورد تماما. ويمكن استخدام أكواد الـHTML داخل أكواد لغة الـ VB Script مع وضع علامتي التنصيص حول هذه الأكواد حتى يتم التعامل معها كأكواد HTML عادية. أي أن اللغتين متكاملتين ، كلاهما مكمل للآخر .
يمكن كتابة أكواد اللغة داخل أي محرر نصوص عادي مثل :
أو أي برنامج نصي آخر ، ومن ثم يتم حفظ الصفحة كصفحة ويب للعرض بواسطة أحد مستعرضات الويب .
تُعرف أكواد اللغة ويتم إضافتها داخل أكواد لغة الـHTML الأساسية المعتادة وذلك عن طريق إضافة القن التالي :
<html>
<body>
<script language="VBScript">
</script>
</body>
</html>
أحد أبسط الأمثلة على هذه اللغة ، عرض نص بسيط على شاشة المتصفح ، بإستخدام الأمر document.write
<html>
<body>
<script language="VBScript">
document.write("Hello World, This My First VB Page")
</script>
</body>
</html>
ستظهر على شاشة المستخدم جملة :
Hello World, This My First VB Page
تُعرف المتغيرات في لغة الـ VBScript عن طريق الكلمة المحجوزة Dim ، ويشترط عند حجز المتغيرات ملاحظة عدة أمور:
ومثال ذلك :
<html>
<body>
<script language="VBScript">
Dim Num,swel
num=10
swel="أهلا وسهلا بكم في صفحتي الأولى"
document.write swel
document.write "العدد الذي قمت بإدخاله هو:" & num
</script>
</body>
</html>
عند تعريف المتغيرات في لغة الـ VBScript لا يتم تعيين نوع بيانات لهذه المتغيرات ، وعند إسناد القيم يتم إسنادها بواسطة عملية مساواة عادية.
ماسيظهر على الشاشة عند تطبيق الكود السابق هو:
أهلا وسهلا بكم في صفحتي الأولى
العدد الذي قمت بإدخاله هو: 10
الثوابت هي قيم ثابتة مخزنة تحت اسم معين ، لاتتغير قيمتها أثناء تشغيل الكود . يُغنى استخدام الثوابت عن تمرير القيمة عدة مرات أثناء الكود البرمجي . تُعرف الثوابت في لغة الـ VBScript عن طريق الكلمة المحجوزة Const ، ويشترط لها مايُشترط للمتغيرات.
<html>
<body>
<script language="VBScript">
Const Num
num=10
document.write num^4*2 + num/3
</script>
</body>
</html>
ماسيظهر على الشاشة عند تطبيق الكود السابق هو: ناتح العملية الحسابية
num^4*2 + num/3
يوجد بعض الثوابت المحجوزة والمنشئة سابقا ً في لغة الـ VBScript والتي يمكن استعمالها مباشرة كثوابت الألوان
تييح الـVB Script عملية بحث الشروط داخل بنيتها ، تُفيد هذه العملية في تحديد المسارات والحالات التي قد تواجه المستخدم.
<html>
<body>
<script language="VBScript">
dim num
num=inputbox("أدخل رقما","طلب ادخال رقم")
If num >= 200 then
msgbox("الرقم الذي ادخلته أكبر من 200")
else
msgbox("العدد المدخل أقل من 200")
End if
</script>
</bady>
</html>
<html>
<body>
<script language="VBScript">
dim str
str=inputbox("أدخل شهر ميلادك")
select str
case 1
document.write("أنت من مواليد برج الجدي")
case 2
document.write("أنت من مواليد برج الدلو")
case 3
document.write("أنت من مواليد برج الحوت")
case else
document.write("الخيار غير موجود")
end select
</script>
</bady>
</html>
تُفيد الحلقات التكرارية في منع المبرمج من تكرار الأسطر البرمجية ، وهي بذلك تختصر الأكواد إلى أكواد أقل حجما ، وتسْهل لاحقا عملية تعديلها ومراجعتها .
يوجد نوعين من الحلقات التكرارية في لغة الـ VB Script
سُميت بالحلقات التكرارية المنتهية لأنها تقوم بتكرار نفسها عدد من المرات ، ثم تتوقف بعد إيفاء هذا العدد مباشرة ، من أمثلتها حلقات For بنية جملة For في الـ VB Script
<html>
<body>
<script language="VBScript">
dim i
for i=1 to 15 step 1
document.write "أهلا وسهلا"
Next
</script>
</body>
</html>
في المثال السابق يتم طباعة جملة أهلا وسهلا على الشاشة لخمسة عشرة مرة، بعد ذلك تتوقف الحلقة عند وصول العداد للرقم 15
وهي حلقات تكرارية أيضا ، لكن تختلف عن النوع السابق في عدم تحديد عدد مرات التكرار منذ البداية ، بل تشترط شرط ، انتفاء الشرط أو تحققه هو مايحدد امكانية استمرار الحلقة من عدمها من أمثلة الحلقات التكرارية الشرطية :
الفرق مابين الحلقتين السابقتين هو في موضع الشرط الخاص بالجملة ، فالحلقات من النوع الأول تستمر طالما الشرط محقق بها ، أما الحلقات من النوع الثاني فتستمر طالما الشرط غير محقق ، وتقف عند تحقق هذا الشرط.
بعض الدوال المشهورة في هذه اللغة:
الدالة | وظيفتها | مـثــال | نتيجة المثال | |
---|---|---|---|---|
1 | "النص"MsgBox | تظهر مربع رسالة | "أهلا وسهلا "MsgBox | يظهر للمستخدم مربع رسالة يحمل النص أهلا وسهلا |
2 | ()Time | تعرض الوقت الحالي | msgbox (time) | يظهر للمستخدم مربع رسالة يحمل الوقت الحالي 1:11 AM |
3 | ()Date | تعرض التاريخ الحالي | msgbox(Date) | يظهر للمستخدم مربع رسالة يحمل التاريخ الحالي 14-6-2007 |
4 | ()Now | تعرض الوقت والتاريخ الحاليين | ()Document.write Now | يطبع على الشاشة 1:11Am 14-6-2007 |
5 | ("الرسالة الظاهرة للمستخدم تُكتب هنا")Inputbox | مربع إدخال ، يطلب من المستخدم إدخال قيمة معينة | ("أدخل رقما")inputbox | يظهر مربع إدخال يحمل النص (أدخل رقماً) |