易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript中的JSON

 
JavaScript中的JSON
 
JavaScript是为网景浏览器做页面脚本语言而实现的一种编程语言。它现在还被很多人误解是java的子集。它是一种具有类C语法和弱对象的模式语言。JavaScript完全遵守ECMAScript语言说明书第三版。
JSON是JavaScript对象文字记号的子集。由于JSON是JavaSript的子集,所以在JavaScript里,可以方便的应该JSON。
var myJSONObject = {"bindings": [
        {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"},
        {"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"},
        {"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"}
    ]
};
在这个例子里面,创建一个单独的成员——“bindings”,这个成员里包含一个有三个对象——“ircEvent”, “method”和“regex”的对象数组。
数据可以用逗号(,)或者下标符,例:
myJSONObject.bindings[0].method    // "newURI"
您可心用eval()把JSON中的数据转化为对象。 Eval()可以调用javascript编译器。由于JSON是JavaScript的子集,编译器可以正确的把文本转化为对象结构。这个字段必须是包在父的语法中的,避免在JavaScript的语法下产生二意性。
       var myObject = eval('(' + myJSONtext + ')');
       这具eval函数运行非常快,但它能编译和运行任何JavaScript程序,因此有一定的安全隐患。当源代码是可信任并且合适的时候,eval的用法是完全可以的。E用JSON剖析器更加安全。在XMLHttpRequest的网页应用程序中,只有相同的源程序提供页面被允许,因此它是可信的。但它也有不可以的时候:如果服务器在JSON编码上不严密或者它没有全部证实它的所有输入的话,它可能发送带有危险脚本的不合法JSON文本。而eval函数能运行这个脚本,释放出危险。
       用JSON解析器就能防止这种事情,JSON解析器只认JSON内容,不认作保脚本。在支持JSON的浏览器中,JSON解析器比eval快多了,期望在ECMAScript标准的下一个版本中会包含对本地JSON的支持。
var myObject = JSON.parse(myJSONtex


相关文档:

Javascript导出Excel

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; ......

[翻译]High Performance JavaScript(003)

Dynamic Script Elements  动态脚本元素
    The Document Object Model (DOM) allows you to dynamically create almost any part of an HTML document using JavaScript. At its root, the <script> element isn't any different than any other element on a page: references can be retrie ......

[翻译]High Performance JavaScript(005)

第二章  Data Access  数据访问
    One of the classic computer science problems is determining where data should be stored for optimal reading and writing. Where data is stored is related to how quickly it can be retrieved during code execution. This problem in JavaScri ......

关于javascript模块加载的思索2

经几天思考,想到一个叫“文件与模块”的问题。我们的模块肯定写在一个JS文件中,这些模块又可以分为核心模块与外围模块。核心模块当然写在主文件中,它应该包含最重要的逻辑,加载器,列队,命名空间构造器等等。但如果一个文件只存在一个模块这也太浪费了,而且会导致请求法过多,因此出现多个模块“共生”于一个文件的情 ......

Javascript弹出对话框3种方式

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
 &nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号