JSON 学习之JSON in JavaScript详细使用说明


Posted in Javascript onFebruary 23, 2010
<script type="text/javascript" src="scripts/json/json2.js"></script> 
<script type="text/javascript" src="scripts/json/jsonmessage.js"></script>

一、在javascript中使用JSON创建一个对象
Js代码
//创建一个空对象 
var JSONObject = {} 
//创建一个新的对象 
var JSONObject = new Object() 
//创建一个包含属性的对象,其中名称为字符串,年龄为整型 
var JSONObject = { 
"name":"kevin", 
"age":23 
}

和java中类似,我们可以通过点(.)操作符取得对象的属性。
var JSONObject = { 
    "name":"kevin", 
    "age":24, 
}; alert("JSONObject.name:"+JSONObject.name); 
alert("JSONObject.age:"+JSONObject.age);

二、在javascript中使用JSON创建数组对象

创建一个Student对象,里面包含两个数组对象,每个数组对象中,包含Student对象的属性。

var student = { 
    //第一个数组对象Class 
    "Class":[ 
        { 
            "name":"kevin", 
            "className":"java", 
            "age":23 
        }, 
        { 
            "name":"yang", 
            "className":"java", 
            "age":24 
        }     
    ], 
    //第二个数组对象 
    "Score":[ 
        { 
            "name":"shower", 
            "score":100 
        }, 
        { 
            "name":"zheng", 
            "score":100 
        } 
    ] 
} var i=0; 
for(i=0;i<student.Class.length;i++){ 
    alert("student.Class["+i+"].name===>"+student.Class[i].name); 
    alert("student.Class["+i+"].className===>"+student.Class[i].className); 
    alert("student.Class["+i+"].age===>"+student.Class[i].age); 
} 
for(i=0;i<student.Score.length;i++){ 
    alert("student.Score["+i+"].name===>"+student.Score[i].name); 
    alert("student.Score["+i+"].score===>"+student.Score[i].score); 
}

三、使用JSON在javascript中创建消息
//create a Student Object 
var Student = { 
    "Math":[{ 
            "name":"kevin", 
            "mark":70, 
            "age":23 
        },{ 
            "name":"smart", 
            "mark":40, 
            "age":25 
        } 
    ], 
    "Science":[{ 
            "name":"kevin2", 
            "mark":70, 
            "age":23 
        },{ 
            "name":"smart2", 
            "mark":40, 
            "age":25 
        } 
    ] 
} //print array value 
var i = 0; 
var array = new Array(); 
for(i=0;i<Student.Math.length;i++){ 
    array.push(Student.Math[i].name); 
    array.push(Student.Math[i].mark); 
    array.push(Student.Math[i].age); 
} 
for(i=0;i<Student.Science.length;i++){ 
    array.push(Student.Science[i].name); 
    array.push(Student.Science[i].mark); 
    array.push(Student.Science[i].age); 
} 
alert("array==>"+array); 
//This method produce a JSON text from a JavaScript value. 
//这个方法将一个JavaScript值转换为一个JSON字符串 
alert("array.toJSONString()==>"+array.toJSONString()); 
alert("String.parseJSON==>"+array.toJSONString().parseJSON()); 
var data2 = array.toJSONString().parseJSON(); 
if(data2 instanceof Array){ 
    alert("Array"); 
}

//表达式有浏览器兼容问题 
//var cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, 
// escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g, 
//这个是修正后的 
var cx = new RegExp('/[\\u0000\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g'), 
escapable = new RegExp('/[\\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g'),
Javascript 相关文章推荐
js DOM模型操作
Dec 28 Javascript
javascript实现在指定元素中垂直水平居中
Sep 13 Javascript
浅谈jQuery 中的事件冒泡和阻止默认行为
May 28 Javascript
原生js实现返回顶部缓冲效果
Jan 18 Javascript
学习使用jQuery表单验证插件和日历插件
Feb 13 Javascript
javascript编程实现栈的方法详解【经典数据结构】
Apr 11 Javascript
Angular 4 依赖注入学习教程之FactoryProvider的使用(四)
Jun 04 Javascript
详解Angular4 路由设置相关
Aug 26 Javascript
js移动端图片压缩上传功能
Aug 18 Javascript
使用vue-cli编写vue插件的方法
Feb 26 Javascript
springMvc 前端用json的方式向后台传递对象数组方法
Aug 07 Javascript
解决Vue+Element ui开发中碰到的IE问题
Sep 03 Javascript
js下用层来实现select的title提示属性
Feb 23 #Javascript
jquery 锁定弹出层实现代码
Feb 23 #Javascript
javascript document.compatMode兼容性
Feb 23 #Javascript
js操作ajax返回的json的注意问题!
Feb 23 #Javascript
javascript入门基础之私有变量
Feb 23 #Javascript
第一个JavaScript入门基础 document.write输出
Feb 22 #Javascript
jQuery入门问答 整理的几个常见的初学者问题
Feb 22 #Javascript
You might like
PHP实现的回溯算法示例
2017/08/15 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
2020/01/26 PHP
javascript StringBuilder类实现
2008/12/22 Javascript
JavaScript入门教程(9) Document文档对象
2009/01/31 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
jQuery判断密码强度实现思路及代码
2013/04/24 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
2013/07/25 Javascript
Js判断CSS文件加载完毕的具体实现
2014/01/17 Javascript
JQuery核心函数是什么及使用方法介绍
2016/05/03 Javascript
JavaScript判断数组是否存在key的简单实例
2016/08/03 Javascript
JS实现HTML表格排序功能
2016/08/05 Javascript
AngularJs Managing Service Dependencies详解
2016/09/02 Javascript
微信小程序 css使用技巧总结
2017/01/09 Javascript
利用Node.js编写跨平台的spawn语句详解
2017/02/12 Javascript
快速搭建React的环境步骤详解
2017/11/06 Javascript
让网站自动生成章节目录索引的多个js代码
2018/01/07 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
layui 上传图片 返回图片地址的方法
2019/09/26 Javascript
JS中作用域以及变量范围分析
2020/07/18 Javascript
在Python中使用matplotlib模块绘制数据图的示例
2015/05/04 Python
Python简单格式化时间的方法【strftime函数】
2016/09/18 Python
详解python中requirements.txt的一切
2017/03/03 Python
Python实现的手机号归属地相关信息查询功能示例
2017/06/08 Python
详解django.contirb.auth-认证
2018/07/16 Python
纯css3使用vw和vh实现自适应的方法
2018/02/09 HTML / CSS
世界上最大的铁人三项商店:Tri UK
2020/11/04 全球购物
酒店副总岗位职责
2013/12/24 职场文书
外贸采购员岗位职责
2014/03/08 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
应聘教师自荐信
2015/03/26 职场文书
乡镇科协工作总结2015
2015/05/19 职场文书
聘任书范文大全
2015/09/21 职场文书
求职信:求职应该注意的问题
2019/04/24 职场文书
dubbo服务整合zipkin详解
2021/07/26 Java/Android
安装harbor作为docker镜像仓库的问题
2022/06/14 Servers