eval()函数的作用

29 篇文章 1 订阅

eval函数是强大的数码转换引擎,字符串经eval转换后得到一个javascript对象,

举简单例子:

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!’);

js的数据类型为弱类型,可以在定义的时候指定数据类型,也可以在运算过程中强制数据类型转换

一个对象经过eval转换后数据类型不确定,在相加过程中自动与其他数据类型一致

eval应用实例,如下:

后台传给前台一个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转换成一个对象,也就取得对象的属性了

例:

var data = { p1:1, p2:"b" };
for (var i in data)
{
    alert(eval("data." + i));
}


http://blog.163.com/xujiaxi@126/blog/static/362109932012350555468/

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值