79751017

Date: 2025-08-30 08:14:38
Score: 2
Natty:
Report link

ยินดีด้วยครับ! 🤩 การตรวจสอบค่าในโครงสร้าง JSON ด้วย JavaScript นั้นทำได้ไม่ยากเลย ผมมีสคริปต์ฟังก์ชันที่พร้อมใช้งานให้คุณทันทีเลยครับ

โค้ด JavaScript ที่ใช้งานได้

ฟังก์ชันนี้จะรับอินพุต 2 ตัวตามที่คุณต้องการ: taskId (ค่าที่ต้องการค้นหา) และ jsonData (โครงสร้าง JSON) จากนั้นจะวนลูปตรวจสอบว่ามีค่า ExternalTaskId ที่ตรงกับค่าที่ต้องการหรือไม่

/**

* ตรวจสอบว่าค่า ExternalTaskId มีอยู่ในโครงสร้าง JSON หรือไม่

* @param {string} taskId - ค่า Task ID ที่ต้องการค้นหา

* @param {object} jsonData - โครงสร้าง JSON ที่มีอาร์เรย์ของ items

* @returns {boolean} - คืนค่า true หากพบ, false หากไม่พบ

*/

function isTaskFound(taskId, jsonData) {

// ตรวจสอบว่า jsonData และ jsonData.items มีอยู่และเป็นอาร์เรย์หรือไม่

if (!jsonData || !Array.isArray(jsonData.items)) {

return false;

}

// วนลูปผ่านแต่ละ item ในอาร์เรย์ items

for (const item of jsonData.items) {

// ตรวจสอบว่าค่า ExternalTaskId ของ item นั้นๆ ตรงกับ taskId ที่ส่งเข้ามาหรือไม่

if (item.ExternalTaskId === taskId) {

  // หากพบ ให้คืนค่า true ทันที

  return true;

}

}

// หากวนลูปจนจบแล้วยังไม่พบ ให้คืนค่า false

return false;

}

// ตัวอย่างการใช้งาน:

const varTaskID = "TaskID3"; // อินพุต 1

const jsonInput = { // อินพุต 2

"items": [{

"ExternalParentTaskId": "12345",

"ExternalTaskId": "TaskID1"

}, {

"ExternalParentTaskId": "11111",

"ExternalTaskId": "TaskID2"

}, {

"ExternalParentTaskId": "3456",

"ExternalTaskId": "TaskID3"

}, {

"ExternalParentTaskId": "423423",

"ExternalTaskId": "TaskID3"

}, {

"ExternalParentTaskId": "55666",

"ExternalTaskId": "TaskID3"

}]

};

// เรียกใช้ฟังก์ชันเพื่อตรวจสอบและเก็บผลลัพธ์

const result = isTaskFound(varTaskID, jsonInput);

// แสดงผลลัพธ์

console.log(result); // จะแสดงผลลัพธ์เป็น: true

การทำงานของโค้ด

* ฟังก์ชัน isTaskFound: รับค่า taskId และ jsonData เป็นพารามิเตอร์

* การตรวจสอบความถูกต้อง: โค้ดจะตรวจสอบเบื้องต้นก่อนว่า jsonData มีอยู่จริงและ jsonData.items เป็นอาร์เรย์หรือไม่ เพื่อป้องกันข้อผิดพลาดหากโครงสร้างข้อมูลไม่ถูกต้อง

* การวนลูป: ใช้ for...of เพื่อวนลูปทีละรายการในอาร์เรย์ items

* การเปรียบเทียบค่า: ในแต่ละรอบการวนลูป จะเปรียบเทียบค่าของ item.ExternalTaskId กับ taskId ที่เราต้องการค้นหา

* การคืนค่า:

* ถ้าพบค่าที่ตรงกันเมื่อใด ฟังก์ชันจะ คืนค่า true ทันที และหยุดการทำงาน เพื่อประสิทธิภาพที่ดีที่สุด

* ถ้าวนลูปจนครบทุกรายการแล้วยังไม่พบค่าที่ตรงกัน ฟังก์ชันจะ คืนค่า false

คุณสามารถนำโค้ดนี้ไปใช้งานได้เลยครับ โค้ดนี้ถูกออกแบบมาให้ทำงานได้อย่าง

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

Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • User mentioned (1): @param
  • User mentioned (0): @param
  • User mentioned (0): @returns
  • No latin characters (1.5):
  • Low reputation (1):
Posted by: lnspira firma