首页 > 编程语言 >JavaScript 全局对象参考手册 eval() 函数

JavaScript 全局对象参考手册 eval() 函数

时间:2023-06-13 22:38:26浏览次数:39  
标签:参考手册 string 抛出 JavaScript write eval document


JavaScript eval() 函数


JavaScript 全局对象参考手册


定义和用法

eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

语法



eval(string)



 

 

参数

描述

string

必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。

返回值

通过计算 string 得到的值(如果有的话)。

说明

该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。因此请不要为 eval() 函数传递 String 对象来作为参数。

如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 EvalError 异常。

抛出

如果参数中没有合法的表达式和语句,则抛出 SyntaxError 异常。

如果非法调用 eval(),则抛出 EvalError 异常。

如果传递给 eval() 的 Javascript 代码生成了一个异常,eval() 将把该异常传递给调用者。


提示和注释

提示:虽然 eval() 的功能非常强大,但在实际使用中用到它的情况并不多。


实例

例子 1

在本例中,我们将在几个字符串上运用 eval(),并看看返回的结果:



<script type="text/javascript">

eval("x=10;y=20;document.write(x*y)")
document.write("<br />");
document.write(eval("2+2"))
document.write("<br />");
var x=10
document.write(eval(x+17))

</script>



 

 

输出:



200 4 27



 

 

例子 2

看一下在其他情况中,eval() 返回的结果:



<script type="text/javascript">

eval("2+3")	// 返回 5
var myeval = eval;	// 可能会抛出 EvalError 异常
myeval("2+3");	// 可能会抛出 EvalError 异常

</script

>



 

 

可以使用下面这段代码来检测 eval() 的参数是否合法:



try  {
     alert("Result:" + eval(prompt("Enter an expression:","")));
     }

catch(exception) {
     alert(exception);
     }



 

 

标签:参考手册,string,抛出,JavaScript,write,eval,document
From: https://blog.51cto.com/u_16160131/6473868

相关文章

  • IDE Eval Reset忘了重置进不去怎么办?
     今天打开IDEA发现试用30天过期了,进不去页面,所以之前安装的EvalReset插件无法点击,重置无限免费30天使用了。这咋办呢。。。其实这个插件是一个开源项目,无限重置时间之所以能生效,关键就在key文件。我大致了解了一下此插件源代码之后,可以得知key文件里面存储的信息:1.基本环......
  • javascript:eval()的用法
    eval()是JavaScript中的一个全局函数,它可以计算或执行参数。如果参数是表达式,则eval()计算表达式;如果参数是一个或多个JavaScript语句,则eval()执行这些语句。以下是一些常见的用法:-计算表达式的值:`varresult=eval("3+5");`-执行JavaScript代码字符串:`varcode......
  • JavaScript Array 对象参考手册 splice() 方法
    JavaScriptsplice()方法返回JavaScriptArray对象参考手册(目录)定义和用法splice()方法用于插入、删除或替换数组的元素。语法arrayObject.splice(index,howmany,element1,.....,elementX) 参数描述index必需。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组......
  • JavaScript Array 对象参考手册 reverse() 方法
    JavaScriptreverse()方法返回JavaScriptArray对象参考手册(目录)定义和用法reverse()方法用于颠倒数组中元素的顺序。语法arrayObject.reverse() 提示和注释注释:该方法会改变原来的数组,而不会创建新的数组。实例在本例中,我们将创建一个数组,然后颠倒其元素的顺序:<scr......
  • javascript反编译工具javascript-obfuscator的环境搭建
    javascript-obfuscator的项目和文档地址:https://github.com/javascript-obfuscator/javascript-obfuscatorwindows端安装nodejs环境打开nodejs安装包,一直点NEXT,默认设置安装即可。安装后:#测试nodejs和npm是否已安装npm-v#如果有输出版本号,例如输出9.5.0,表示安装成功#查看......
  • Javascript中的内存(垃圾)回收机制
    JavaScript具有自动垃圾回收机制。垃圾收集器会按照固定的时间间隔周期性的执行常见的垃圾回收方式:标记清除、引用计数方式。一、标记清除方法1、工作原理:【标记“离开环境”的就回收内存】当变量进入环境时,将这个变量标记为“进入环境”。当变量离开环境时,则将其标记为“......
  • this 之谜揭底:从浅入深理解 JavaScript 中的 this 关键字(二)
    前言系列首发于公众号『前端进阶圈』,若不想错过更多精彩内容,请“星标”一下,敬请关注公众号最新消息。this之谜揭底:从浅入深理解JavaScript中的this关键字(二)调用位置在理解this的绑定过程之前,首先要理解调用位置:调用位置就是函数在代码中被调用的位置(而不是声明的......
  • V8是如何执行JavaScript代码的?
    前言一般来讲,电脑是不能直接运行我们的javascript代码的,它需要一个翻译程序将人类能够理解的编程语言JavaScript,翻译成机器能够理解的机器语言。目前市面上有很多种JavaScript引擎,诸如SpiderMonkey、V8、JavaScriptCore等。而由谷歌开发的开源项目V8是当下使用最广泛的Ja......
  • Javascript考试复习
    登录页面<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>登录页面</title><style>html{background:#bde0ff;}form{text-align......
  • [Javascript] Rendering process
     DOM(DocumnetObjectModel)Tree:Whenawebpageisloaded,thebrowserreadstheHTMLandbuildstheDOMtree.TheDOMisatree-likestructurethatrepresentsthecontentofthewebpage.EachHTMLtagbecomesanodeinthetree,andthesenodescanh......