Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ความแตกต่างระหว่าง void, eval, และ Function Constructor ใน JavaScript


คีย์เวิร์ด void

void เป็นคีย์เวิร์ดสำคัญใน JavaScript ใช้เป็น unary operator ปรากฏก่อน operand เดียวซึ่งอาจเป็นชนิดใดก็ได้ ออปเปอเรเตอร์นี้ระบุ expression ที่จะประเมินค่าโดยไม่คืนค่า

ไวยากรณ์ของ void สามารถเป็นได้ทั้งสองรูปแบบ:

<head>    <script>       <!--          void func()          javascript:void func()          or:          void(func())          javascript:void(func())       //-->    </script> </head>

ฟังก์ชัน eval()

JavaScript eval() ใช้ execute อาร์กิวเมนต์ โค้ดจะ execute ช้าลงเมื่อใช้ eval() method มันยังมีการปฏิบัติด้านความปลอดภัยเพราะมีขอบเขตการ execute ที่ต่างกัน

ตัวอย่าง

นี่คือวิธีใช้งาน eval() function:

<html>    <body>       <script>          var a = 30;          var b = 12;          var res1 = eval("a * b") + "<br>";          var res2 = eval("5 + 10") + "<br>";          document.write(res1);          document.write(res2);       </script>    </body> </html>

ผลลัพธ์

360 15

Function Constructor

function() constructor ใช้ใน JavaScript เพื่อสร้าง function object ใหม่ ออบเจกต์ที่สร้างจะถูก parse เมื่อฟังก์ชันถูกสร้าง

ตัวอย่าง

คุณสามารถลองรันโค้ดต่อไปนี้เพื่อเรียนรู้การทำงานกับ function() constructor:

<html>    <body>       <script>          var num = new Function('p', 'q', 'r', 'return p * q * r');          document.write("Value after multiplication: "+num(5, 2, 9));       </script>    </body> </html>

ผลลัพธ์

Value after multiplication: 90