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 相关文章推荐
jQuery 1.5 源码解读 面向中高阶JSER
Apr 05 Javascript
关闭时刷新父窗口两种方法
May 07 Javascript
js获取滚动距离的方法
May 30 Javascript
基于JavaScript实现类似于百度学术高级检索功能
Mar 02 Javascript
js仿新浪微博消息发布功能
Feb 17 Javascript
在javaScript中检测数据类型的几种方式小结
Mar 04 Javascript
微信小程序搜索组件wxSearch实例详解
Jun 08 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
Dec 19 Javascript
js验证身份证号码记录的方法
Apr 26 Javascript
JavaScript事件循环及宏任务微任务原理解析
Sep 02 Javascript
vue集成openlayers加载geojson并实现点击弹窗教程
Sep 24 Javascript
Ajax请求超时与网络异常处理图文详解
May 23 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中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
2010/08/21 PHP
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
2011/10/08 PHP
php实现邮件发送并带有附件
2014/01/24 PHP
PHP仿微信多图片预览上传实例代码
2016/09/13 PHP
用js判断浏览器是否是IE的比较好的办法
2007/05/08 Javascript
超强的IE背景图片闪烁(抖动)的解决办法
2007/09/09 Javascript
jquery 图片 上一张 下一张 链接效果(续篇)
2010/04/20 Javascript
jquery异步跨域访问代码
2013/06/28 Javascript
javascript中Math.random()使用详解
2015/04/15 Javascript
Jquery ajax加载等待执行结束再继续执行下面代码操作
2015/11/24 Javascript
js 获取元素所有兄弟节点的实现方法
2016/09/06 Javascript
jquery 动态增加删除行的简单实例(推荐)
2016/10/12 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
JavaScript canvas仿代码流瀑布
2020/02/10 Javascript
JavaScript实现捕获鼠标坐标
2020/04/12 Javascript
python实现用户登陆邮件通知的方法
2015/07/09 Python
浅析python递归函数和河内塔问题
2017/04/18 Python
解决sublime+python3无法输出中文的问题
2018/12/12 Python
python配置grpc环境
2019/01/01 Python
Python判断对象是否相等及eq函数的讲解
2019/02/25 Python
基于Python的Post请求数据爬取的方法详解
2019/06/14 Python
树莓派+摄像头实现对移动物体的检测
2019/06/22 Python
Django路由层URLconf作用及原理解析
2020/09/24 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
澳大利亚旅游网站:Lastminute
2017/08/07 全球购物
欧舒丹美国官网:L’Occitane美国
2018/02/23 全球购物
巴西箱包、背包、钱包和旅行配件购物网站:Inovathi
2019/12/14 全球购物
学校司机岗位职责
2013/11/14 职场文书
物控部经理职务说明书
2014/02/25 职场文书
我们的节日端午节活动方案
2014/03/02 职场文书
库房管理员岗位职责
2014/03/09 职场文书
地质灾害防治方案
2014/05/14 职场文书
影子教师研修方案
2014/06/14 职场文书
2016大学先进团支部事迹材料
2016/03/01 职场文书
vue-router中hash模式与history模式的区别
2021/06/23 Vue.js