eval在JS中的作用
2016-02-28 15:47
651 查看
转自:http://blog.163.com/xujiaxi@126/blog/static/362109932012350555468/
form:http://www.zhiminliu.com/?p=398
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转换成一个对象,也就取得对象的属性了
form:http://www.zhiminliu.com/?p=398
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转换成一个对象,也就取得对象的属性了
相关文章推荐
- js setInterval和clearInterval 的使用
- JS闭包小结
- Jsonp 复习笔记
- JavaScript--map、reduce、filter、sort
- js中的各种宽高
- 解析JSON数据的详细步骤以及偷懒技巧(使用第三方库GSON以及GsonFormat工具)
- netctoss01_项目概述及规范【Servlet+JSP版】
- html、css、js的命名规范
- js继承学习
- jsp内置对象*response
- jsp内置对象*session
- jsp内置对象*out
- jsp内置对象*page
- jsp内置对象*exception
- jsp内置对象*pageContext
- jsp内置对象*config
- JavaScript--Map和Set介绍
- 【前端】Sublime text3 插件HTML/CSS/JS prettify 格式化代码
- bzoj 1031: [JSOI2007]字符加密Cipher 后缀数组
- 1016: [JSOI2008]最小生成树计数