JavaScript Code

ตัวเลือก Action ในบล็อค JavaScript Code ช่วยให้คุณสามารถ รันคำสั่ง JavaScript ภายใน GemPhoneFarm ได้ เช่นการ ตั้งเงื่อนไขที่ซับซ้อน, การใช้งานคำสั่งที่จำเป็น


ตัวเลือก Execution context

คุณสามารถเลือกรันโค้ด JavaScript ได้โดยการเลือกประเภทของ Execution context

  • Active tab: เป็นการรันบนหน้าเว็บที่กำลังใช้งาน

  • Background: เป็นการรัน JavaScript อยู่เบื้องหลัง Application


เวลาในการรอ

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


ฟังก์ชั่นที่อยู่ภายในบล็อค JavaScript Code

ในบล็อค JavaScript Code มีฟังก์ชั่นที่สร้างไว้ล่วงหน้า ซึ่งคุณสามารถเรียกใช้ใน Node นี้ได้โดยมีฟังก์ชันดังนี้:

NextBlock()

สามารถเลือกได้จะให้บล็อกอะไรทำงานเป็นลำดับถัดไป และ สามารถบันทึกข้อมูลลงใน Column ของ Table ได้

รูปแบบการเขียนพารามิเตอร์

NextBlock({ name: 'A', age: 24 });
// หรือ
NextBlock([{ name: 'A', age: 24 }, { name: 'A1', age: 24}])
// ดำเนินการต่อไปยัง Node ที่ระบุ
NextBlock({ name: 'A' }, { nextBlockId: '4dxcxa3' })

ตัวอย่างเช่น:

NextBlock({Data:’A’}) //เป็นการบันทึก ‘A’ ลงในตัวแปร Data ใน table

หมายเหตุ: จำเป็นต้องสร้าง Column ไว้ในTable ก่อน

ฟังก์ชั่นที่สามารถใช้ร่วมกับ NextBlock():

insert

เป็นการกำหนดว่าเราต้องการให้แทรกข้อมูลหรือไม่ ค่าที่ใช้จะเป็น boolean เช่น true/false หากเราไม่ระบุ insert ค่าเริ่มต้นจะเป็น true

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

NextBlock({Data:’A’},{insert:true})
NextBlock({Data:’A’},{insert:false})

ผลที่ได้คือ: A จะไม่ถูกบันทึกลงในตัวแปร Data เนื่องจาก insert เป็น false

nextBlockId

ฟังก์ชันนี้เป็นการระบุว่าเราต้องการให้อะไรทำงานเป็นลำดับถัดไป โดยระบุผ่าน ID ของบล็อกนั้นๆ เช่น หาก 2 บล็อคต่อกับ JavaScript code เราสามารถกำหนดได้ว่าจะให้ไหนทำงานเป็นลำดับถัดไป

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

NextBlock({Data:’A’},{nextBlockId:’vwbv3nv’})

หาก เราไม่กำหนดว่าให้บล็อกทำงานเป็นลำดับถัด บล็อคจะทำงานพร้อมกัน

แต่หาก ระบุ nextBlockId ก็ จะสามารถเลือกได้ว่าให้บล็อคไหนทำงานเป็นลำดับถัดไป

replaceTable

แทนที่ค่าตัวแปรในตารางด้วยค่าที่ตั้งไว้ในพารามิเตอร์แรก โดยเราสามารถกำหนดว่าจะให้แทนที่ค่าหรือไม่ ด้วยคำสั่ง boolean true/false ค่าเริ่มต้นจะเป็น false เช่น

NextBlock({Data:"A"},{nextBlockId:'vwbv3nv',replaceTable:true})

หาก ตัวแปร Data เก็บค่า B ไว้แล้ว เมื่อกำหนดพารามิเตอร์ replaceTable จะมีค่าเป็น true

ตัวแปร B จะถูก A แทนที่

RefData(keyword, path?)

ใช้สำหรับดึงข้อมูลจากตัวแปร หรือ table ของโปรแกรม ตัวอย่างเช่น

  • หากมีตัวแปรชื่อ number ใน variables จะสามารถใช้ RefData('variables', 'number') เพื่อดึงข้อมูลตัวแปรนั้นได้

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

SetVariable(name, value)

ใช้สำหรับประกาศ หรืออัพเดตข้อมูลตัวแปร หรือ table ของโปรแกรม ตัวอย่างเช่น

  • คุณสามารถประกาศตัวแปรขึ้นมาใหม่ โดยใช้ SetVariable(‘name’, ‘Bob’) เพื่อสร้างตัวแปรที่ชื่อว่า name ที่เก็บค่า Bob

ตัวอย่างการใช้งาน SetVariable เพื่อประกาศตัวแปร
  • หากมีตัวแปรอยู่แล้ว สามารถอัพเดตได้ เช่น ถ้ามีตัวแปร number เป็นค่า 10 เราสามารถใช้ SetVariable(‘number’, 20) เพื่อเปลี่ยนค่าเป็น 20 ได้

ตัวอย่างการใช้งาน SetVariable เพื่ออัพเดตตัวแปร

Last updated

Was this helpful?