เมื่อเรียนรู้ ASP หากมีคนบอกคุณว่าคุณไม่จำเป็นต้องมีความรู้ในการเขียนโปรแกรมคุณก็เป็นความผิดพลาดครั้งใหญ่ ในความเป็นจริงลักษณะของสภาพแวดล้อมหน้าเซิร์ฟเวอร์ ASP Dynamic คือการเขียนผ่านภาษาสคริปต์หนึ่งหรือหลายภาษา สคริปต์ให้ความสะดวกสบายแก่นักออกแบบให้เรา ลองมาดูการแนะนำคำสั่งของสคริปต์ ASP ด้วยกัน
การใช้ภาษาสคริปต์ที่เหมาะสมนั้นเกี่ยวข้องโดยตรงกับข้อดีและข้อเสียของแอปพลิเคชัน ASP หลังจากเรียนรู้ฟังก์ชั่นและคำสั่งตามเงื่อนไขของภาษาสคริปต์ vbscript ในบทความก่อนหน้านี้วันนี้เราจะยังคงดูคำสั่งลูปใน VBScript
ฟังก์ชั่นของคำสั่งลูปคือการเรียกใช้รหัสโปรแกรมซ้ำ ๆ ลูปสามารถแบ่งออกเป็นสามหมวดหมู่: ประเภทหนึ่งซ้ำคำสั่งก่อนที่เงื่อนไขจะกลายเป็น "เท็จ" ประเภทหนึ่งซ้ำคำสั่งก่อนที่เงื่อนไขจะกลายเป็น "จริง" และประเภทอื่น ๆ ซ้ำคำสั่งตามจำนวนครั้งที่ระบุ คำสั่งลูปต่อไปนี้สามารถใช้ใน VBScript:
ทำ ... ลูป: วนซ้ำเมื่อ (หรือจนกว่า) เงื่อนไขคือ "จริง"
ในขณะที่ ... Wend: วนรอบเมื่อเงื่อนไข "จริง"
สำหรับ ... ถัดไป: ระบุจำนวนลูปและทำซ้ำคำสั่งโดยใช้ตัวนับ
foreach ... ถัดไป: สำหรับแต่ละรายการในชุดหรือแต่ละองค์ประกอบในอาร์เรย์ให้ทำซ้ำชุดของคำสั่ง
ก่อนอื่นดู Do ... Loop ซึ่งสามารถเรียกใช้บล็อกคำสั่งหลายครั้ง (หลายครั้ง) ทำซ้ำบล็อกคำสั่งเมื่อเงื่อนไขเป็น "จริง" หรือก่อนที่เงื่อนไขจะกลายเป็น "จริง" โปรดดูตัวอย่างต่อไปนี้:
ข้างต้นเป็นการแนะนำคำสั่ง ASP Script Loop หากคุณมีคำถามใด ๆ คุณสามารถฝากข้อความไว้เพื่อสื่อสาร ขอบคุณสำหรับการสนับสนุนจากช่องเทคโนโลยีใหม่ที่ถูกหรือผิด!
กรุณากรอกบันทึกการชำระยอดขายสำหรับแต่ละเดือนนับจากปีนี้ถึงเดือนนี้ในหน้านี้
-
เคาน์เตอร์ = 1
Thismonth = เดือน (ตอนนี้ ())
dowhilecounterresponse.write "" & เคาน์เตอร์ & "เดือน:"
Response.write "______________________________________" & "
-
ifcounter> 13 จากนั้น
ออกจาก
endif
เคาน์เตอร์ = เคาน์เตอร์+1
วง
-
โปรแกรม ASP นี้ใช้คำสั่ง LOOP เพื่อสร้างตารางบันทึกการขายการขายคลิปรหัสข้างต้นไปยัง Notepad และบันทึกเป็น doloop.asp และเรียกดูในเบราว์เซอร์ใน HTTP ขึ้นอยู่กับเดือนปัจจุบัน
มาวิเคราะห์โปรแกรมนี้กันเถอะ จุดประสงค์ของเราคือการพิมพ์ตารางตามเดือนปัจจุบัน ก่อนอื่นเราสร้างตัวนับ "นับ" และตั้งค่าเป็น 1 จากนั้นเราใช้ฟังก์ชั่นเดือน () และตอนนี้ () เพื่อรับเดือนปัจจุบันและในที่สุดก็สร้างลูป เมื่อค่าของการนับน้อยกว่าค่าของเดือนปัจจุบันค่าเดือนและเส้นแนวนอนจะแสดงและค่าของการนับเพิ่มขึ้น 1 คำสั่งวนซ้ำจะทำซ้ำจนกว่าเงื่อนไขข้างต้นจะเป็นเท็จ หากการนับมากกว่า 13 Exitdo จะถูกใช้เพื่อออกจากลูปทันที
คำสั่ง Doloop ยังสามารถใช้ไวยากรณ์ต่อไปนี้:
ทำ
[งบ] [Exitdo]
[คำสั่ง] วนซ้ำ [{ในขณะที่จนถึง} เงื่อนไข]
ในขณะที่ ... มีคำสั่งซื้อสำหรับผู้ใช้ที่คุ้นเคยกับการใช้งาน อย่างไรก็ตามเนื่องจากในขณะที่ ... Wend ขาดความยืดหยุ่นขอแนะนำให้ใช้คำสั่ง DO ... มาดูคำสั่ง fornext กันเถอะ สำหรับ ... คำสั่งถัดไปใช้เพื่อเรียกใช้บล็อกคำสั่งตามจำนวนครั้งที่ระบุโดยใช้ตัวแปรตัวนับในลูปซึ่งค่าเพิ่มขึ้นหรือลดลงในแต่ละลูป
ตัวอย่างต่อไปนี้ทำซ้ำขั้นตอน myProc 50 ครั้ง คำสั่งสำหรับระบุตัวแปรตัวนับ X และค่าเริ่มต้นและสิ้นสุด คำสั่งถัดไปเพิ่มตัวแปรตัวนับ 1 ในแต่ละครั้ง
subdomyproc50times ()
สลัว
forx = 1to50
MyProc
ต่อไป
enddub
ขั้นตอนคำหลักใช้เพื่อระบุค่าของตัวแปรตัวนับทุกครั้งที่เพิ่มหรือลดลง ในตัวอย่างต่อไปนี้ตัวแปรตัวนับ j จะเพิ่มขึ้น 2 ครั้งในแต่ละครั้ง หลังจากลูปเสร็จสิ้นค่ารวมคือผลรวมของ 2, 4, 6, 8 และ 10. subtwostotal ()
dimj, ทั้งหมด
forj = 2to10step2
ทั้งหมด = ทั้งหมด+j
ต่อไป
msgbox "ผลรวมของ" & total & "."
enddub
หากต้องการลดตัวแปรตัวนับให้ตั้งค่าขั้นตอนเป็นค่าลบ ในเวลานี้ค่าการเลิกจ้างของตัวแปรตัวนับจะต้องน้อยกว่าค่าเริ่มต้น ในตัวอย่างต่อไปนี้ตัวแปร Mynum จะลดลง 2 ครั้งในแต่ละครั้ง หลังจากลูปเสร็จสิ้นค่ารวมคือผลรวมของ 16, 14, 12, 10, 8, 6, 4 และ 2. subnewtotal ()
Dimmynum ทั้งหมด
formynum = 16to2Step-2
Total = Total+mynum
ต่อไป
msgbox "ผลรวมของ" & total & "."
enddub
คำสั่ง Exitfor ใช้เพื่อออกจากคำสั่งสำหรับ ... คำสั่งถัดไปก่อนที่ตัวนับถึงมูลค่าการเลิกจ้าง เนื่องจากมักจะออกจากลูปในบางกรณีพิเศษ (เช่นเมื่อเกิดข้อผิดพลาด) คุณสามารถใช้คำสั่ง exitfor ในบล็อกคำสั่งจริงของ IF ... จากนั้น ... หากเงื่อนไขเป็นเท็จลูปจะทำงานตามปกติ
ในที่สุดลองมาดู foreach ... คำแถลงถัดไป foreach ... ลูปถัดไปจะคล้ายกับสำหรับ ... ลูปถัดไป foreach ... ถัดไปไม่ได้เรียกใช้คำสั่งตามที่ระบุ แต่เพื่อทำซ้ำชุดของคำสั่งสำหรับแต่ละองค์ประกอบในอาร์เรย์หรือสำหรับแต่ละรายการในการรวบรวมวัตถุ สิ่งนี้มีประโยชน์มากเมื่อคุณไม่ทราบจำนวนองค์ประกอบในคอลเลกชัน ไวยากรณ์ของมันมีดังนี้: foreachelementingRoup
[งบ]
[Exitfor]
[คำสั่ง] ถัดไป [องค์ประกอบ]
หากมีองค์ประกอบอย่างน้อยหนึ่งองค์ประกอบในกลุ่มมันจะเข้าสู่บล็อก foreach เพื่อดำเนินการ เมื่อคุณป้อนลูปข้อความทั้งหมดในลูปจะถูกดำเนินการครั้งแรกในองค์ประกอบแรกในกลุ่ม ตราบใดที่มีองค์ประกอบอื่น ๆ ในกลุ่มงบในลูปจะถูกดำเนินการในแต่ละองค์ประกอบ ออกจากลูปเมื่อไม่มีองค์ประกอบอื่น ๆ ในกลุ่มแล้วดำเนินการดำเนินการต่อจากคำสั่งหลังจากคำสั่งถัดไป
ณ จุดนี้เราได้เรียนรู้ความรู้พื้นฐานทั้งหมดของภาษาสคริปต์ vbscript แล้ว แต่คุณไม่สามารถมีความเชี่ยวชาญในการใช้ VBScript โดยการอ่านบทความที่มีอยู่เหล่านี้เพียงอย่างเดียว คุณต้องปรับปรุงระดับของคุณผ่านการฝึกฝนอย่างต่อเนื่อง แน่นอนถ้าคุณคุ้นเคยกับ C คุณสามารถเลือก JavaScript เป็นภาษาสคริปต์สำหรับแอปพลิเคชัน ASP ฉันสงสัยว่าคุณพบว่าโปรแกรมการดีบัก ASP นั้นยากหรือไม่เพราะไม่มีเครื่องมือสำเร็จรูป ที่นี่ฉันจะแนะนำ Microsoft Script Debugger สั้น ๆ ให้คุณซึ่งเราสามารถใช้เพื่อทำการดีบักโปรแกรมจำนวนหนึ่ง
Microsoft scriptDebugger (เครื่องมือตรวจจับข้อผิดพลาดของสคริปต์) รวมอยู่ใน IIS4.0 ให้ฟังก์ชั่นการตรวจจับข้อผิดพลาดสำหรับโปรแกรมสคริปต์ คุณสามารถใช้เครื่องมือตรวจจับข้อผิดพลาดของสคริปต์ Microsoft เพื่อตรวจจับสคริปต์ที่เขียนใน VBScript, JScript และ Javaapplets, ถั่วและส่วนประกอบ ActiveX
โปรแกรมสคริปต์บางรายการจะดำเนินการในเบราว์เซอร์ด้านผู้ใช้ในขณะที่บางโปรแกรมสคริปต์ (ส่วนใน <%…%>) จะถูกดำเนินการทางฝั่งเซิร์ฟเวอร์ Microsoft ScriptDebugger สามารถตรวจจับโปรแกรมสคริปต์ที่ดำเนินการโดยโปรแกรมผู้ใช้และสคริปต์ที่ดำเนินการโดยเซิร์ฟเวอร์ โปรแกรมสคริปต์ที่ดำเนินการในเบราว์เซอร์ด้านผู้ใช้จะดำเนินการในเบราว์เซอร์ด้านผู้ใช้รวมถึงชิ้นส่วน VBScript และ JScript ในรหัส HTML มาตรฐาน รหัส HTML นี้รวมถึงโปรแกรมสคริปต์จะถูกเรียกใช้งานเมื่อเบราว์เซอร์โหลดรหัส HTML นี้หรือเมื่อเหตุการณ์ถูกเรียกใช้โดยกดปุ่ม โปรแกรมสคริปต์ที่ดำเนินการโดยเบราว์เซอร์ด้านผู้ใช้ส่วนใหญ่จะใช้สำหรับการตรวจสอบขั้นพื้นฐานของอินพุตฟอร์ม HTML และฟังก์ชั่นอื่น ๆ
โปรแกรมสคริปต์ที่ดำเนินการบนฝั่งเซิร์ฟเวอร์จะดำเนินการบนฝั่งเซิร์ฟเวอร์ IIS รวมถึงในโปรแกรม. ASP ก่อนอื่นดำเนินการบนเซิร์ฟเวอร์ IIS ผลลัพธ์การดำเนินการจะสร้างรหัส HTML มาตรฐานจากนั้นส่งไปยังเบราว์เซอร์ผู้ใช้ โปรแกรมสคริปต์ที่ดำเนินการโดยเซิร์ฟเวอร์ส่วนใหญ่จะใช้สำหรับการเชื่อมโยงหลายหน้าเว็บการประมวลผลอินพุตฟอร์ม HTML และการเข้าถึงข้อมูลฐานข้อมูลบนเซิร์ฟเวอร์
Microsoft ScriptDebugger ให้ฟังก์ชั่นการดีบักต่อไปนี้:
1. ตั้งค่าจุดหยุดชะงัก
2. ค่อยๆติดตามโปรแกรมสคริปต์
3. ชุดบุ๊กมาร์ก
4. ตรวจสอบสแต็กการโทร
5. ตรวจสอบและเปลี่ยนค่า
6. ดำเนินการตามคำแนะนำสคริปต์
นั่นคือทั้งหมดสำหรับการแนะนำคำสั่งวนสคริปต์ ASP คุณเข้าใจหลังจากอ่านหรือไม่? หากคุณไม่เข้าใจคุณสามารถฝากข้อความไปยังบรรณาธิการของ Foxin Foxin มีความสุขมากที่จะตอบคำถามของคุณ