eval() 函数 解析json对象

eval在js中用来运行以js源码组成的字符串。

可以用来改变全局或者局部变量,例如:

var globalEval = eval;     //定义全局eval函数别名
var a ='global', b = 'global';    //全局变量
function c()
{
  var a = 'local';      //局部变量
eval('a+="changed"');  //直接更改局部变量的值
 return a;      //返回更改后的局部变量
}
 function d()
{
   var b = 'local';
   globalEval("b+='changed'");
   return b;
} 
    
console.log(c(), a);            //localchanged                       global
console.log(d() , b)           //local                                         globalchanged

严格模式下,其更像运算符,不可以将其赋给eval的全局函数别名。

 

json字符集

var data=" 

root: 

{name:'1',value:'0'}, 
{name:'6101',value:'北京市'}, 
{name:'6102',value:'天津市'}, 
{name:'6103',value:'上海市'}, 
{name:'6104',value:'重庆市'}, 
{name:'6105',value:'渭南市'}, 
{name:'6106',value:'延安市'}, 
{name:'6107',value:'汉中市'}, 
{name:'6108',value:'榆林市'}, 
{name:'6109',value:'安康市'}, 
{name:'6110',value:'商洛市'} 
]
}"; 

解析服务器返回的json数据时,用eval("("+data+")")防止当成js语句执行,因其有"{}"符号,

例:

var dataObj=eval("("+data+")");//转换为json对象

使用$("#name").text(""(+dataObj.root.name+)"");

转载于:https://www.cnblogs.com/ouyangping/p/6582621.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值