Angular คือ ตอนที่ 3 : นิพจน์ (Expressions)

  1. ทำความเข้าใจเกี่ยวกับนิพจน์ AngularJS
  2. การใช้งาน AngularJS Expressions เบื้องต้น
  3. การผูกข้อมูลด้วย AngularJS Expressions
  4. นิพจน์และคำสั่ง (Directives) ของ AngularJS
  5. นิพจน์ในตัวจัดการเหตุการณ์ (Event Handlers)
  6. นิพจน์ (Expressions) และตัวกรอง (Filters)
  7. นิพจน์เทียบกับโค้ด JavaScript
  8. ความปลอดภัยของ AngularJS Expressions

AngularJS เป็นเฟรมเวิร์ก JavaScript อันทรงพลังที่พัฒนาโดย Google ซึ่งส่วนใหญ่ใช้สำหรับทำเว็บ Angular และทำแอพหน้าเดียวแบบไดนามิก หนึ่งในคุณสมบัติที่โดดเด่นที่สุดของ AngularJS คือการใช้นิพจน์ หากคุณตั้งเป้าที่จะทำเว็บ Angular และทำแอพที่มีการโต้ตอบสูง การเรียนรู้ศิลปะของการแสดงออกของ AngularJS นั้นเป็นสิ่งที่ขาดไม่ได้

1. ทำความเข้าใจเกี่ยวกับนิพจน์ AngularJS

นิพจน์ (Expressions) AngularJS เป็นข้อมูลโค้ดที่คล้ายกับ JavaScript ซึ่งฝังอยู่ใน HTML ของคุณโดยตรง นิพจน์เหล่านี้เชื่อมโยงข้อมูลแอปพลิเคชันเข้ากับ HTML ทำให้คุณสามารถสร้างเทมเพลตไดนามิกได้อย่างง่ายดาย ในรูปแบบไวยากรณ์ พวกมันคล้ายกับเครื่องหมายปีกกาคู่แบบหนวด ( {{ }}) ที่ใช้กันทั่วไปในเทมเพลต JavaScript อย่างไรก็ตาม นิพจน์ AngularJS มีชุดคุณลักษณะที่สมบูรณ์กว่ามาก รวมถึงความสามารถในการจัดการข้อมูล เรียกใช้ฟังก์ชัน และนำการคำนวณไปใช้โดยตรงภายใน HTML

2. การใช้งาน AngularJS Expressions เบื้องต้น

ความสวยงามของการแสดงออกของ AngularJS นั้นอยู่ที่ความเรียบง่าย สิ่งที่คุณต้องทำเพื่อใช้งานคือห่อโค้ดของคุณไว้ใน {{ }} แท็ก จากนั้นคอมไพเลอร์ AngularJS จะประเมินนิพจน์และแสดงผลโดยตรงใน DOM

<p>The sum of 2 and 2 is: {{ 2 + 2 }}</p>

เมื่อโค้ดบรรทัดนี้ประมวลผลโดย AngularJS นิพจน์ภายในแท็ก {{ }} จะได้รับการประเมิน ส่งผลให้ผลลัพธ์ต่อไปนี้:

<p>The sum of 2 and 2 is: 4</p>

ตัวอย่างง่ายๆ นี้แสดงให้เห็นว่าการแสดงออกของ AngularJS มีประสิทธิภาพเพียงใดในการเพิ่มการโต้ตอบและไดนามิกให้กับเว็บแอปพลิเคชันของคุณ

3. การผูกข้อมูลด้วย AngularJS Expressions

หนึ่งในการใช้งานทั่วไปของนิพจน์ AngularJS คือการผูกข้อมูลกับ HTML ของคุณ นี่คือจุดที่ AngularJS โดดเด่น เนื่องจากเป็นวิธีที่ราบรื่นในการเชื่อมต่อโค้ด JavaScript (โมเดล) กับ HTML (มุมมอง) ของคุณ

สมมติว่าคุณมีวัตถุ JavaScript ที่คุณต้องการแสดงบนหน้าเว็บของคุณ:

$scope.person = {
    firstName: 'John',
    lastName: 'Doe'
};

คุณสามารถผูกข้อมูลนี้กับ HTML ของคุณได้อย่างง่ายดายโดยใช้นิพจน์ AngularJS:

<p>First Name: {{ person.firstName }}</p>
<p>Last Name: {{ person.lastName }}</p>

ผลลัพธ์จะเป็น:

<p>First Name: John</p>
<p>Last Name: Doe</p>

วิธีการนี้ช่วยเพิ่มความสามารถในการอ่านโค้ดและการบำรุงรักษา ทำให้ AngularJS เป็นตัวเลือกที่ยอดเยี่ยมสำหรับการทำเว็บ Angular และทำแอพ

4. นิพจน์และคำสั่ง (Directives) ของ AngularJS

คำสั่งเป็นคุณลักษณะเฉพาะของ AngularJS พวกเขาขยาย HTML โดยเพิ่มแอตทริบิวต์และองค์ประกอบใหม่ที่มีฟังก์ชันเพิ่มเติม สามารถใช้นิพจน์ AngularJS ในคำสั่งเพื่อผูกข้อมูลแบบไดนามิกและปรับปรุงการโต้ตอบ

พิจารณาng-repeatคำสั่งซึ่งใช้เพื่อทำซ้ำบล็อกของ HTML สำหรับแต่ละรายการในคอลเลกชัน คุณสามารถใช้นิพจน์ AngularJS ภายในคำสั่งนี้เพื่อแสดงเนื้อหาของแต่ละรายการแบบไดนามิก

<div ng-repeat="item in items">
  <p>{{ item.name }}</p>
  <p>{{ item.description }}</p>
</div>

ในตัวอย่างนี้ ng-repeat คำสั่งวนซ้ำแต่ละ ‘item’ ในคอลเลกชัน ‘items’ และนิพจน์ AngularJS จะแสดงชื่อและคำอธิบายของแต่ละรายการแบบไดนามิก

5. นิพจน์ในตัวจัดการเหตุการณ์ (Event Handlers)

นิพจน์ไม่จำกัดเฉพาะการเชื่อมโยงข้อมูลและคำสั่ง นอกจากนี้ยังสามารถใช้ภายในตัวจัดการเหตุการณ์ เช่น ng-click, ng-change, เป็นต้น ทำให้คุณสามารถรันโค้ด JavaScript เมื่อผู้ใช้โต้ตอบกับหน้าเว็บของคุณ สิ่งนี้ทำให้ AngularJS เป็นตัวเลือกหลักสำหรับการทำเว็บ Angular และทำแอพที่มีการโต้ตอบสูง

<button ng-click="count = count + 1">Click Me!</button>
<p>You clicked the button {{ count }} times.</p>

ในตัวอย่างนี้ ทุกครั้งที่คลิกปุ่ม ng-click คำสั่งจะดำเนินการนิพจน์ count = count + 1 และเพิ่มค่า count เป็น ค่าที่อัปเดตจะแสดงบนหน้าทันทีด้วยพลังการเชื่อมโยงของนิพจน์ AngularJS

6. นิพจน์ (Expressions) และตัวกรอง (Filters)

หนึ่งในเหตุผลที่ AngularJS เป็นเครื่องมือที่มีศักยภาพสำหรับการทำเว็บ Angular และทำแอพคือช่วงของตัวกรองในตัวที่มีให้สำหรับการแปลงข้อมูล นิพจน์ AngularJS สามารถใช้ร่วมกับตัวกรองเหล่านี้เพื่อจัดรูปแบบและจัดการข้อมูลโดยตรงภายใน HTML ของคุณ

ตัวอย่างเช่น date ตัวกรองซึ่งจัดรูปแบบวันที่ใน JavaScript เป็นรูปแบบใดก็ได้ที่คุณต้องการ:

<p>The date today is: {{ today | date:'fullDate' }}</p>

ที่นี่ today โมเดลจะถูกส่งผ่าน date ตัวกรอง ซึ่งจะจัดรูปแบบวันที่เป็นรูปแบบ ‘fullDate’

7. นิพจน์เทียบกับโค้ด JavaScript

แม้ว่าการแสดงออกของ AngularJS จะคล้ายกับ JavaScript แต่ก็มีความแตกต่างที่สำคัญที่ต้องคำนึงถึง นิพจน์ AngularJS ไม่รองรับเงื่อนไข การวนซ้ำ และข้อยกเว้น ยิ่งไปกว่านั้น ไม่สามารถมีคุณสมบัติที่ไม่ได้กำหนดหรือเป็นค่าว่าง ซึ่งแตกต่างจาก JavaScript ความแตกต่างนี้เป็นตัวเลือกการออกแบบที่ใส่ใจเพื่อป้องกันไม่ให้ตรรกะทางธุรกิจที่ซับซ้อนเล็ดลอดเข้ามาในมุมมอง

8. ความปลอดภัยของ AngularJS Expressions

นิพจน์ AngularJS ให้สภาพแวดล้อมที่ปลอดภัย นิพจน์ทั้งหมดได้รับการประเมินตามขอบเขตเฉพาะ และไม่มีการเข้าถึงโดยตรงไปยังวัตถุหน้าต่างร่วมหรือ eval() ฟังก์ชัน JavaScript สภาพแวดล้อมแบบแซนด์บ็อกซ์นี้ช่วยลดความเสี่ยงของช่องโหว่ด้านความปลอดภัยและรับประกันการดำเนินการโค้ดอย่างปลอดภัย ทำให้ AngularJS เป็นตัวเลือกที่ยอดเยี่ยมสำหรับการทำเว็บ Angular และทำแอพที่ปลอดภัย


นิพจน์ AngularJS เป็นรากฐานที่สำคัญของเฟรมเวิร์ก AngularJS พวกเขาสร้างการเชื่อมโยงที่มีประสิทธิภาพระหว่างโค้ด JavaScript และ HTML ของคุณ ทำให้คุณสามารถทำเว็บ Angular และทำแอพแบบไดนามิกและโต้ตอบได้อย่างง่ายดาย ไม่ว่าคุณกำลังทำเว็บ Angular และทำแอพที่มีคุณลักษณะหลากหลาย การทำความเข้าใจและปรับใช้นิพจน์ AngularJS เป็นสิ่งสำคัญในการปลดล็อกศักยภาพสูงสุดของเฟรมเวิร์กอเนกประสงค์นี้

โปรดจำไว้ว่าการเรียนรู้ภาษาโปรแกรมหรือเฟรมเวิร์กใหม่นั้นเป็นเรื่องของการฝึกฝน ลองทดลองกับนิพจน์ต่างๆ รวมเข้ากับคำสั่งและตัวกรอง AngularJS ต่างๆ แล้วดูผลลัพธ์ด้วยตัวคุณเอง ด้วยความเข้าใจอย่างถ่องแท้เกี่ยวกับการแสดงออกของ AngularJS คุณจะพร้อมที่จะเชี่ยวชาญ AngularJS และสร้างประสบการณ์เว็บที่ยอดเยี่ยม


Angular คืออะไร (AngularJS)

Angular คือ ตอนที่ 2 : โมดูล (Modules)
Angular คือ ตอนที่ 4 : คอนโทรลเลอร์ (Controllers)