ในบทความนี้เราจะมาต่อกันในเรื่องของ Global Variables ในบทความที่แล้วเราได้เห็นว่า Local Variables คือตัวแปรที่ประกาศภายในฟังก์ชั่น และจะใช้แค่ในฟังก์ชั่นเท่านั้น แต่ Global Variables คือการประกาศภายนอกฟังก์ชั่น ส่วนอื่นๆในโปรแกรมสามารถเรียกใช้งานและเข้าถึงตัวแปรนั้นได้
แต่จริงๆแล้วเราสามารถทำให้ตัวแปรที่ประกาศภายในฟังก์ชั่นเป็นตัวแปรแบบ Global ได้เช่นกัน
จากรูปด้านบน บรรทัดที่ 1-2 คือฟังก์ชั่นที่ประกาศค่าตัวแปร x = ‘Adam’ แต่ตัวแปร x จะมีค่าแค่ในฟังก์ชั่นเท่านั้น เนื่องจากเป็น local variable
บรรทัดที่ 4 คือการเรียกฟังก์ชั่น
บรรทัดที่ 5 คือการปริ้นค่าตัวแปร x ออกมาด้วย แต่ เนื่องจาก x ไม่มีค่าใดๆนอกฟังก์ชั่น ดังนั้นโปรแกรมจะเกิด error เนื่องจากมองไม่เห็นค่าของตัวแปร x
Global Keyword คือ Keyword ที่สามารถทำให้ตัวแปรที่ประกาศภายในฟังก์ชั่นกลายเป็น Global Variables ได้
จากรูปด้านบน บรรทัดที่ 1-3 ก็การสร้างฟังก์ชั่นชื่อ myfun
บรรทัดที่ 2 คือการประกาศว่าตัวแปร x จะเป็นตัวแปร global ที่มีผลนอกฟังก์ชั่นนั้นๆด้วย
บรรทัดที่ 5 คือการเรียกใช้ฟังก์ชั่น
และบรรทัดที่ 7 คือการปริ้นค่า x จะเห็นว่าเราสามารถปริ้นค่า x ได้ เนื่องจาก x กลายเป็น global variable ตั้งแต่มีการเรียกใช้ฟังกืชั่นจากบรรทัดที่ 5
สำหรับตัวอย่างสุดท้ายนี้ หากเราประกาศ global variable มาก่อน คือบรรทัดที่ 1 x = ‘Levi’
และเรามีการประกาศ global variable อีกครั้งหนึ่งภายในฟังก์ชั่นที่ชื่อ myfunc ให้ x = ‘adam’
ตัวแปร x จะถูกเขียนทับโดย global variable ที่ใหม่กว่า นั่นก็คือ x = ‘adam’
ทำให้ผลลัพธ์สุดท้ายที่บรรทัด 9 คำสั่งปริ้นจะปริ้น x = ‘adam’ ออกมา
จะเห็นได้ว่าเรื่องของตัวแปรทั้ง Local Variables และ Global Variables เป็นเรื่องที่ไม่ยากและจำเป็นต่อการเขียนโปรแกรมอย่างมากเลยทีเดียว