วิธีการใช้งานคำสัญญาใน JavaScript?



โดยทั่วไปแล้วสัญญาใน JavaScript จะใช้เพื่อจัดการการดำเนินการแบบอะซิงโครนัส บทความนี้จะช่วยคุณสำรวจแนวคิดโดยละเอียด

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

คำแนะนำต่อไปนี้จะกล่าวถึงในบทความนี้





ให้เราเริ่มต้นด้วยบทความนี้เกี่ยวกับสัญญาใน JavaScript

ความสำคัญ:

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



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

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ประเภทของรัฐ:

สำเร็จ: ที่เกี่ยวข้องกับคำสัญญาที่ประสบความสำเร็จ
ถูกปฏิเสธ: เกี่ยวข้องกับคำสัญญาเหล่านั้นซึ่งถูกปฏิเสธ
รอดำเนินการ: เกี่ยวข้องกับสัญญาที่รอดำเนินการเช่นไม่ปฏิเสธหรือยอมรับ
ตัดสิน: เกี่ยวข้องกับคำสัญญาเหล่านั้นที่กำลังจะสำเร็จหรือถูกปฏิเสธ

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript



การสร้างสัญญา

คำสัญญาถูกสร้างขึ้นโดยใช้ตัวสร้างคำสัญญา

ไวยากรณ์:

var สัญญา = คำสัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {// ทำบางอย่างที่นี่})

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

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ตัวอย่างที่ 1:

var สัญญา = คำสัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {/ * การประกาศและกำหนดตัวแปรสองประเภทของประเภทข้อมูล const ที่มีเนื้อหาเดียวกัน * / const a = 'สวัสดีฉันชื่อ Yash และฉันสนใจวิทยาศาสตร์คอมพิวเตอร์' const b = 'สวัสดีฉันชื่อ Yash และฉันสนใจในวิทยาศาสตร์คอมพิวเตอร์' // ตรวจสอบว่าเนื้อหาทั้งสองที่เก็บไว้ในตัวแปรเหมือนกันหรือไม่ถ้า (a === b) {// เรียกการแก้ปัญหา () } else {// โทรปฏิเสธปฏิเสธ ()}}) สัญญา แล้ว (function () {console.log ('Promise Resolved !!')}) จับ (function () {console.log ('Promise Rejected !!')})

เอาท์พุต:
เอาต์พุต - สัญญาใน JavaScript- Edureka

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ตัวอย่างที่ 2:

var สัญญา = คำสัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {// เริ่มต้นตัวแปรสองตัวด้วยค่าจำนวนเต็ม const x = 11 + 2 const y = 26/2 // ตรวจสอบว่าตัวแปรทั้งสองเท่ากันหรือไม่ถ้า (x === y ) สัญญา {// โทรแก้ไขการแก้ปัญหา ()} อื่น ๆ {// เรียกปฏิเสธการปฏิเสธ ()}}) แล้ว (function () {console.log ('Promise is Resolved !!')}) จับ (function () {console.log ('Promise is Rejected !!')})

เอาท์พุต:

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ตัวอย่างที่ 3:

var สัญญา = คำสัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {const i = 'Hello' const a = 'World' // ดำเนินการเพิ่มตัวแปรสองตัวเพื่อเก็บค่าในตัวแปรอื่น const j = i + a if ((i + a ) === j) สัญญา {// โทรแก้ไขการแก้ปัญหา ()} อื่น ๆ {// โทรปฏิเสธการปฏิเสธ ()}}) แล้ว (function () {console.log ('Promise is Resolved !!')}) จับ (function () {console.log ('Promise is Rejected !!')})

เอาท์พุต:

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ผู้บริโภคในคำสัญญา

มีสองฟังก์ชั่นการลงทะเบียน:

แล้ว ()

เมื่อคำสัญญาได้รับการแก้ไขหรือปฏิเสธระบบจะเรียกใช้ ()

พารามิเตอร์:

  • หากคำสัญญาได้รับการแก้ไขฟังก์ชันแรกจะถูกเรียกใช้และได้รับผลลัพธ์
  • หากคำสัญญาถูกปฏิเสธฟังก์ชันที่สองจะถูกเรียกใช้งานและข้อผิดพลาดจะปรากฏขึ้นบนหน้าจอ

ไวยากรณ์:

.then (ฟังก์ชัน (ผลลัพธ์) {// การจัดการความสำเร็จ} ฟังก์ชัน (ข้อผิดพลาด) {// การจัดการข้อผิดพลาด})

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ตัวอย่าง

เมื่อสัญญาได้รับการแก้ไข

// การแก้ไขคำสัญญา var สัญญา = คำสัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {แก้ไข ('ข้อความสำเร็จเขียนที่นี่!')}) สัญญาแล้ว (ฟังก์ชัน (successMessageishere) {// ฟังก์ชันการจัดการความสำเร็จถูกเรียกใช้ console.log (successMessageishere)}, ฟังก์ชัน (errorMessageishere) {console.log (errorMessageishere)})

เอาท์พุต:

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

เมื่อคำสัญญาถูกปฏิเสธ

// การปฏิเสธสัญญา var สัญญา = สัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {ปฏิเสธ ('ข้อความปฏิเสธถูกเขียนที่นี่!')}) สัญญาแล้ว (ฟังก์ชัน (successMessage) {console.log (successMessage)} ฟังก์ชัน ( errorMessage) {// ฟังก์ชันตัวจัดการข้อผิดพลาดถูกเรียกใช้ console.log (errorMessage)})

เอาท์พุต:

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

จับ ( )

เมื่อใดก็ตามที่มีข้อผิดพลาดบางอย่างหรือคำสัญญาถูกปฏิเสธในช่วงเวลาดำเนินการจะเรียกใช้ catch ()
พารามิเตอร์:

  • มีเพียงฟังก์ชันเดียวเท่านั้นที่ถูกส่งไปเป็นพารามิเตอร์ในเมธอด catch ()
  • ฟังก์ชันนี้สร้างขึ้นเพื่อจัดการข้อผิดพลาดหรือสัญญาว่าจะปฏิเสธ

ไวยากรณ์:

.catch (ฟังก์ชัน (ข้อผิดพลาด) {// การจัดการข้อผิดพลาด})

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

เปลี่ยนวัตถุเป็นอาร์เรย์ php

ตัวอย่างที่ 1:

var สัญญา = คำสัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {ปฏิเสธ ('Promise is Rejected')}) สัญญาแล้ว (ฟังก์ชัน (ความสำเร็จ) {console.log (ความสำเร็จ)}) .catch (ฟังก์ชัน (ข้อผิดพลาด) {// ฟังก์ชันตัวจัดการข้อผิดพลาดถูกเรียกใช้ console.log (error)})

เอาท์พุต:

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ตัวอย่างที่ 2:

var สัญญา = สัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {// ข้อความแสดงข้อผิดพลาดโยนข้อผิดพลาดใหม่ ('มีข้อผิดพลาดบางอย่าง!')}) สัญญาแล้ว (ฟังก์ชัน (ความสำเร็จ) {console.log (ความสำเร็จ)}) .catch (function (error) {// error handler function is invoked console.log (error)})

เอาท์พุต:

ไปต่อกับบทความนี้เกี่ยวกับสัญญาใน JavaScript

ตัวอย่างที่ 3:

var สัญญา = สัญญาใหม่ (ฟังก์ชัน (แก้ไขปฏิเสธ) {// ข้อความแสดงข้อผิดพลาดสามารถแก้ไขได้ที่นี่โยนข้อผิดพลาดใหม่ ('ข้อผิดพลาดบางอย่างเกิดขึ้น!')}) สัญญาแล้ว (ฟังก์ชัน (Thissuccess) {console.log (Thissuccess)} ) .catch (ฟังก์ชัน (Thiserror) {// ฟังก์ชันตัวจัดการข้อผิดพลาดเรียกใช้ console.log (Thiserror)})

เอาท์พุต:

ใบสมัคร:
1. การจัดการเหตุการณ์แบบอะซิงโครนัส
2. การจัดการคำขอ http แบบอะซิงโครนัส

ดังนั้นเราจึงมาถึงตอนท้ายของบทความนี้ในเรื่อง 'Promises in JavaScript' หากคุณต้องการเรียนรู้เพิ่มเติมโปรดดูไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ หลักสูตรการฝึกอบรมและการรับรอง Java J2EE และ SOA ของ Edureka ได้รับการออกแบบมาเพื่อฝึกอบรมคุณสำหรับแนวคิด Java ทั้งหลักและขั้นสูงพร้อมกับกรอบงาน Java ต่างๆเช่น Hibernate & Spring

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของบล็อกนี้และเราจะติดต่อกลับโดยเร็วที่สุด