JavaScript函数eval()

eval()函数的作用是将字符串以脚本的形式执行
例如:

<script type="text/javascript">
  var str = "var name=‘张三‘";
  eval(str);
  document.write(name);  // 输出 张三
</script>

具体应用场景:

将服务器端传递过来的字符串参数,按照js脚本执行

例如:服务器端传递过来一个"[10,20,30]"这样的字符串,可以使用eval将这个字符串解析成数组对象

<script type="text/javascript">
  var str = "[10,20,30]";  // 这个是从服务器端传递过来的字符串
  var array = eval(str);   // 解析成数组对象并赋值给array变量
  for(var i=0;i<array.length;i++){
    document.write(array[i]+"&nbsp;");
  }
  // 输出结果 10 20 30
</script>
时间: 2024-12-06 02:39:41

JavaScript函数eval()的相关文章

javascript 字符串转为对像函数eval(&quot;string&quot;)

javascript有一个很有用的函数eval("string")这个函数可以把字符串转换为对象或者可以执行的语句,例如你的代码可以用obj2=eval("document.a.c"+i),另外你还可以这样写eval("alert()"),eval("a+=2"),这样你就可以让用户输入的javascript语句执行 你的docheck()如此改即可:function docheck(){ obj1=eval("do

javascript 中函数eval()

eval()函数可以把一个字符串当作一个JavaScript表达式一样去执行它. 我们常常在Javascript中间到Eval这个函数, 有些人觉得这个函数很奇怪,可以把一些字符串变的功能很强大 在我们需要将普通的字符串转变成具体的对象的时候,就会用到这个函数  eval 函数对作为数字表达式的一个字符串进行求值,其语法为: eval(expr) 此处 expr 是一个被求值的字符串参数. 如果该字符串是一个表达式,eval 求该表达式的值: 如果该参数代表一个或多个 JavaScript 语句

JavaScript中eval函数

JavaScript中eval函数是检查 JavaScript代码并执行. 使用方法: eval(codeString) 其中必选项 codestring 参数是包含有效 JScript 代码的字符串值.这个字符串将由 JScript 分析器进行分析和执行. eval 函数允许 JScript 源代码的动态执行.例如,下面的代码创建了一个包含 Date 对象的新变量 mydate :http://www.hrbfc120.com eval("var mydate = new Date();&qu

JavaScript中Eval()函数的作用

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->首先来个最简单的理解 eval可以将字符串生成语句执行,和SQL的exec()类似. eval的使用场合是什么呢?有时候我们预先不知道要执行什么语句,只有当条件和参数给时才知道执行什么语句,这时候eval就派上用场了.举个例子: 我们要做一个function(),功能是输入网页中两个个对象的名称,然后程

JavaScript函数,作用域以及闭包

JavaScript函数,作用域以及闭包 1. 函数 (1). 函数定义:函数使用function关键字定义,它可以用在函数定义表达式或者函数声明定义. a. 函数的两种定义方式: * function functionName() {} * var functionName = function(){} b. 两种函数定义不同之处 1). 声明提前问题 函数声明语句   :声明与函数体一起提前 函数定义表达式 :声明提前,但是函数体不会提前 请看下面图示:绿色线上面实在js初始加载的时候,查看

2015第37周五javascript函数arguments对象巧用一

Javascript函数的一个巧妙利用:假定action中有一个JSONObject类型的对象data,其值有可能为空,则前台JSP页面的JS代码中想直接通过EL表达式,即${data}的形式访问对象的值,则可能会因为data对象为空导致JS预处理错误,如JSP中有这样的代码,var obj=${data};,则当后台data为null时前台页面会变成var obj=;进而页面报错终止运行.有人想通过类似 var obj=('${data}'==''?{}:${data})来解决,但该代码依旧编

一个简单例子弄懂什么是javascript函数劫持

javascript函数劫持很简单,一般情况下,只要在目标函数触发之前,重写这个函数即可. 比如,劫持eval函数的代码如下: var _eval=eval; eval=function(x){ if(typeof x=='undefined') {return;} alert(x); //这里可以写任意多代码 _eval(x); } eval('alert(1)');//这时eval先弹出参数值,然后才是动态执行参数值 哈哈,是不是很简单.

JavaScript函数劫持

一.为什么我会写这篇文章 这篇文章其实是在一个偶然的机会下发现了居然有JavaScript劫持这种东西,虽然这种东西在平时用的比较少,而且一般实用价值不高,但是在一些特殊的情况下还是要使用到的,所以在这里我就简单的介绍一下 不知道你们在平时有没有注意到这样的一种情况就是每当使用alert()方法的时候,都会感觉这样的方法太过的单调,像加个样式或者是什么的.下面我们就来讲解一下 二.一个关于JavaScript函数劫持的小DEMO 下面我们就来演示一下对alert方法进行劫持的小案例,样式不是很漂

JavaScript 函数、序列化/evel 时间复习

函数分类: script> 普通函数 function () { } 匿名函数: function func(arg){ return arg+1 } setInterval(function(){console.log(123);},5000) 自执行函数: function func () {} func(): ==自动执行案例=== (function(arg){console.log(arg+1);})(123) arg=形参, 后面括号123是实参 传入的数值 </script>