JavaScript 中的 void、eval 和 Function 构造函数有什么区别?


void 关键字

void 是 JavaScript 中的一个重要关键字,可以用作一元运算符,出现在其单个操作数之前,该操作数可以是任何类型。此运算符指定要计算的表达式,但不返回值。

void 的语法可以是以下两种之一:

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

eval() 函数

JavaScript 的 eval() 用于执行一个参数。使用 eval() 方法时,代码执行速度会变慢。它还具有安全实现,因为它具有不同的执行范围。

示例

以下是如何实现 eval() 函数:

在线演示

<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() 构造函数用于在 JavaScript 中创建新的函数对象。创建的对象在创建函数时进行解析。

示例

您可以尝试运行以下代码来学习如何使用 function() 构造函数:

在线演示

<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

更新于:2020年6月16日

240 次浏览

开启您的职业生涯

通过完成课程获得认证

开始学习
广告