eval

eval()函数可计算某个字符串,并执行其中的的JavaScript 代码,eval可以将字符串生成语句执行
eval函数是强大的数码转换引擎,字符串经eval转换后得到一个javascript对象

eval(string)
string参数 必需,要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句
返回值,通过计算 string 得到的值(如果有的话)。

说明:该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回。
因此请不要为 eval() 函数传递 String 对象来作为参数。 如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,
并通过该属性调用它,则 ECMAScript 实现允许抛出一个EvalError 异常。

1.<script type="text/javascript">
eval("x=10;y=20;document.write(x*y)")
document.write(eval("2+2"))
var x=10
document.write(eval(x+17))
</script>
输出:
200 4 27

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

3.
var a = eval("5");等效于var a = 5;

var a = eval("'5'");等效于var a = '5';

var obj = eval(“({name:'cat',color:'black'})”);等效于 var obj = {name:’cat’,color:’black’};

eval("alert('hello world!');");等效于 alert('hello world!');

4.
后台传给前台一个Json数据如

{“id”:1,”name”:”zhangsan”,”age”:30,”address”:”beijing”}

前台这样写

function(returnedData,status){

var people = returnedData;
alert(people);
var id = people.id;
var name = people.name;
var age = people.age;
var address = people.address;

}

如上这样写得话,取到的returnedData是一个字符串而不是一个对象,所以下面取不到对象的属性
如果将 var people = eval(“(“+returnedData+”)”);
即可将people转换成一个对象,也就取得对象的属性了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值