javascript eval和JSON之间的联系
来源:互联网 发布:淘宝产品视频制作价格 编辑:程序博客网 时间:2024/06/01 10:44
ev
ev
举例说明
- ev
al评估JavaS cript表达式
var bar = 'bar';var foobar = eval('"foo" + bar');alert(foobar);
- ev
al评估JavaS cript语句
var bar = 'bar';// if variable bar equals 'bar', foobar is the result of // last executing statement: bar="foo-bar";var foobar = eval('if(bar == "bar") {bar="foo-bar";} else {bar = "bar-foo";}');alert(foobar);// change the valuebar = 'foo';// now our the last executed statement is: bar = "bar-foo";// therefore the value of variable foobar has been changed// into 'bar-foo'foobar = eval('if(bar == "bar") {bar="foo-bar";} else {bar = "bar-foo";}');alert(foobar);
JSON的格式
JSON的格式是由大括号和由冒号(:)构成的名值对所组成的。注意JSON格式与对象字面量 (object literals) 的区别:JSON的名字部分严格用引号+名字来表示。
举例说明
- 对象的字面量
var objectLiteral = { name: "Objector.L", age: "24", special: "JavaScript", sayName: function() { return this.name; }};
- JSON对象
var jsonFormat = { "summary": "Blogs", "blogrolls": [ { "title": "Explore JavaScript", "link": "http://example.com/" }, { "title": "Explore JavaScript", "link": "http://example.com/" } ]};
ev
由于Ajax的兴起,JSON这种轻量级的数据格式作为客户端与服务器之间的传输格式逐渐地流行起来,进而出现的问题是如何将服务器端构建好的JSON数据转化为可用的JavaS
var jsonObject = eval("(" + jsonFormat + ")");
为什么要加括号?
加上圆括号的目的是迫使ev
alert(eval("{}"); // return undefinedalert(eval("({})");// return object[Object]
JSON格式的名字部分为什么要加引号?
因为ev
举例说明
- ev
al错误解析语义
alert(eval('{foo:"bar"}')); // return "bar", incorrect
- ev
al正确解析JSON
alert(eval('({"foo": "bar"})')); // return JSON object, correct
结论
理解ev
following this format:
eval('{' + jsonString + ')');
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- javascript eval和JSON之间的联系
- JSON的基本语法&&javascript eval和JSON之间的联系
- javascript eval和JSON之间的关系
- eval函数和JSON数据格式之间的联系
- JavaScript eval()和JSON
- 手把手教你使用start uml画用例图
- 远程通知中遇到的bug
- UvaOJ 146 ID Codes
- Android 中Handler可能引起的内存泄露
- 解决Oracle ORA-12505, TNS:listener does not currently know of SID given in connect
- javascript eval和JSON之间的联系
- 专注
- extern "C"的用法解析
- Java虚拟机学习摘要
- 手把手教你使用start uml画类图
- 为什么这样能够防止头文件重复调用?
- Linux内核分析(三)内核启动过程分析——构造一个简单的Linux系统
- "Shortest" pair of paths - POJ 3068 费用流
- Android进程与线程基本知识