31 ธันวาคม 2558

Published ธันวาคม 31, 2558 by with 0 comment

รันโค้ด JavaScript ในภาษาไพทอน

สวัสดีผู้อ่านวันส่งท้ายปีเก่าต้อนรับปีใหม่ 2559 ทุกท่านครับ บทความนี้ผมจะพาผู้อ่านไปรันโค้ด JavaScript ในภาษาไพทอนด้วย PyExecJS กันครับ

บทความนี้มีเนื้อหาที่เก่าและโค้ดอาจจะไม่ทันสมัย แต่ถูกจัดเก็บไว้เป็นบันทึก

PyExecJS เป็นโมดูลในภาษาไพทอนที่ช่วยให้สามารถรันโค้ดภาษา JavaScript ในภาษาไพทอนได้ โดยอาศัย Javascript Engine ที่มีอยู่ในระบบ เช่น Microsoft Windows Script Host (JScript) , Apple JavaScriptCore , PyV8 , Node.js และอื่น ๆ เป็นต้น
ใช้ MIT License
รองรับทั้ง Python 2 และ Python 3

ติดตั้งได้ด้วยคำสั่ง pip :
pip install PyExecJS

การใช้งาน
สามารถรันโค้ดภาษา JavaScript ในภาษาไพทอนได้ดังนี้

>>> import execjs
>>> execjs.eval("'red yellow blue'.split(' ')")
['red', 'yellow', 'blue']
>>> ctx = execjs.compile("""
... function add(x, y) {
... return x + y;
... }
... """)
>>> ctx.call("add", 1, 2)
3

และยังสามารถเลือก Javascript Engine ที่ต้องการได้ดังนี้

>>> default = execjs.get() # เลือก Javascript Engine ค่าพื้นฐานที่ตรวจพบ
>>> default.eval("1 + 2")
3
>>> jscript = execjs.get("JScript") # เลือก JScript ในการรัน
>>> jscript.eval("1 + 2")
3
>>> node = execjs.get("Node") # เลือก Node.js ในการรัน
>>> node.eval("1 + 2")
3

และกำหนด path เลือก Javascript Engine ที่ต้องการให้เป็นค่าพื้นฐานได้โดยกำหนดค่าใน path ชื่อ EXECJS_RUNTIME เป็นชื่อ Javascript Engine ที่ต้องการ

>>> #execjs.get().name # this value is depends on your environment.
>>> os.environ["EXECJS_RUNTIME"] = "Node" # กำหนดเป็น Node.js
>>> execjs.get().name
'Node.js (V8)'

หน้าหลักโครงการ PyExecJS https://github.com/doloopwhile/PyExecJS

ติดตามบทความต่อไปนะครับ
สวัสดีปีใหม่ครับ :D

0 ความคิดเห็น:

โพสต์ความคิดเห็น

แสดงความคิดเห็นได้ครับ :)