CoffeeScript - ตัวแปร

ตัวแปรคือชื่อคอนเทนเนอร์เท่านั้น คุณสามารถวางข้อมูลลงในคอนเทนเนอร์เหล่านี้จากนั้นอ้างถึงข้อมูลโดยใช้ชื่อของคอนเทนเนอร์

ตัวแปร CoffeeScript

ใน JavaScript ก่อนที่จะใช้ตัวแปรเราจำเป็นต้องประกาศและเตรียมใช้งาน (กำหนดค่า) ไม่เหมือนกับ JavaScript ในขณะที่สร้างตัวแปรใน CoffeeScript ไม่จำเป็นต้องประกาศโดยใช้ไฟล์varคำสำคัญ. เราเพียงแค่สร้างตัวแปรเพียงแค่กำหนดค่าให้กับลิเทอรัลดังที่แสดงด้านล่าง

name = variable name

ตัวอย่าง

ในโค้ด CoffeeScript ต่อไปนี้เราได้กำหนดตัวแปรสองตัว name และ ageประเภทข้อมูลสตริงและตัวเลขตามลำดับ บันทึกลงในไฟล์ที่มีชื่อvariable_example.coffee.

name = "Javed"
age = 25

Compiling the code

คอมไพล์โค้ด CoffeeScript ด้านบนโดยดำเนินการคำสั่งต่อไปนี้ในพรอมต์คำสั่ง

c:\> compile -c variable_example.coffee

ในการคอมไพล์ไฟล์ JavaScript ชื่อ variable_example.jsจะถูกสร้างขึ้นด้วยเนื้อหาต่อไปนี้ ที่นี่คุณสามารถสังเกตได้ว่าคอมไพเลอร์ประกาศตัวแปร (อายุและชื่อ) โดยใช้ไฟล์var คำหลักในนามของเรา

// Generated by CoffeeScript 1.10.0
(function() {
  var age, name;
  name = "Javed";
  age = 25;
  
}).call(this);

ขอบเขตตัวแปร

ขอบเขตของตัวแปรคือขอบเขตของโปรแกรมของคุณที่กำหนดไว้ ตัวแปร JavaScript และ CoffeeScript มีเพียงสองขอบเขต

  • Global Variables - ตัวแปรส่วนกลางมีขอบเขตทั่วโลกซึ่งหมายความว่าสามารถใช้ได้ทุกที่ในโค้ด JavaScript ของคุณ

  • Local Variables- ตัวแปรโลคัลจะมองเห็นได้เฉพาะในฟังก์ชันที่กำหนดไว้ พารามิเตอร์ของฟังก์ชันจะอยู่ในพื้นที่ของฟังก์ชันนั้นเสมอ

ปัญหาเกี่ยวกับตัวแปรใน JavaScript

ใน JavaScript เมื่อใดก็ตามที่เรากำหนดตัวแปรโดยไม่ใช้ varคำหลักถูกสร้างขึ้นโดยมีขอบเขตทั่วโลก สิ่งนี้ทำให้เกิดปัญหามากมาย ลองพิจารณาตัวอย่างต่อไปนี้ -

<script type = "text/javascript">
   var i = 10;
   document.write("The value of global variable i is "+ i);   
   document.write("<br>");
   test();
   function test() {
      i = 20;
      document.write("The value of local variable i is "+i);
      document.write("<br>");
   }
   document.write("The value of global variable i is "+i);
</script>

ในการดำเนินการ JavaScript ด้านบนจะให้ผลลัพธ์ต่อไปนี้ -

The value of global variable i is 10

The value of local variable i is 20

The value of global variable i is 20

ในตัวอย่างข้างต้นเราได้สร้างตัวแปรชื่อ iในพื้นที่ส่วนกลางและกำหนดค่า 10 ให้กับมัน และภายในฟังก์ชันด้วยความพยายามที่จะสร้างตัวแปรท้องถิ่นที่มีชื่อเดียวกันเราได้ประกาศเป็นi = 20 ; ไม่มีคำหลัก var เนื่องจากเราพลาดไฟล์var คำสำคัญค่าของตัวแปรส่วนกลาง i ถูกกำหนดใหม่เป็น 20

ด้วยเหตุนี้ขอแนะนำให้ประกาศตัวแปรโดยใช้ var คำสำคัญ.

ขอบเขตตัวแปรใน CoffeeScript

เมื่อใดก็ตามที่เรารวบรวมไฟล์ CoffeeScript คอมไพเลอร์ CoffeeScript จะสร้างฟังก์ชันที่ไม่ระบุชื่อและภายในฟังก์ชันนั้นจะแปลงรหัส CoffeeScript เป็น JavaScript ทีละบรรทัด (หากต้องการเราสามารถลบ Wrapper ฟังก์ชันระดับบนสุดได้โดยใช้-b หรือ --bare ตัวเลือกของคำสั่งคอมไพล์) ทุกตัวแปรที่เราสร้างจะถูกประกาศโดยใช้ var คำสำคัญภายในฟังก์ชันที่ไม่ระบุตัวตนดังนั้นโดยค่าเริ่มต้นทุกตัวแปรจะอยู่ในเครื่องใน CoffeeScript

(function() {
  var age, name;
  name = "javed";
  age = 20;
}).call(this);

อย่างไรก็ตามหากเราต้องการเราสามารถประกาศตัวแปรด้วยเนมสเปซส่วนกลาง เราสามารถทำได้อย่างชัดเจนดังที่แสดงด้านล่าง

obj = this
obj.age = 30

ชื่อตัวแปร CoffeeScript (ตัวอักษร)

ขณะตั้งชื่อตัวแปรของคุณใน CoffeeScript โปรดคำนึงถึงกฎต่อไปนี้

  • คุณไม่ควรใช้คีย์เวิร์ดที่สงวนไว้ของ CoffeeScript เป็นชื่อตัวแปร คำหลักเหล่านี้จะกล่าวถึงในส่วนถัดไป ตัวอย่างเช่นชื่อตัวแปร break หรือ Boolean ไม่ถูกต้อง

  • ชื่อตัวแปร CoffeeScript ไม่ควรขึ้นต้นด้วยตัวเลข (0-9) ต้องขึ้นต้นด้วยตัวอักษรหรือขีดล่าง ตัวอย่างเช่น 123test เป็นชื่อตัวแปรที่ไม่ถูกต้อง แต่ _123test เป็นชื่อที่ถูกต้อง

  • ชื่อตัวแปร CoffeeScript คำนึงถึงขนาดตัวพิมพ์ ตัวอย่างเช่น,Name และ name เป็นตัวแปรสองตัวที่แตกต่างกัน