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 相关文章推荐
json跟xml的对比分析
Jun 10 Javascript
JavaScript 操作table,可以新增行和列并且隔一行换背景色代码分享
Jul 05 Javascript
Linux下编译安装php libevent扩展实例
Feb 14 Javascript
javascript的BOM
May 03 Javascript
JS实现课堂随机点名和顺序点名
Mar 09 Javascript
基于bootstrap写的一点localStorage本地储存
Nov 21 Javascript
mpvue构建小程序的方法(步骤+地址)
May 22 Javascript
Angular使用cli生成自定义文件、组件的方法
Sep 04 Javascript
Vue3项目打包后部署到服务器 请求不到后台接口解决方法
Feb 06 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
Jun 05 Javascript
jquery实现拖拽添加元素功能
Dec 01 jQuery
Javascript实现单选框效果
Dec 09 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与MySQL开发的8个技巧小结
2010/12/17 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
php中的登陆login实例代码
2016/06/20 PHP
Javascript动态绑定事件的简单实现代码
2010/12/25 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
2011/08/23 Javascript
{}与function(){}选用空对象{}来存放keyValue
2012/05/23 Javascript
jquery 层次选择器siblings与nextAll的区别介绍
2013/08/02 Javascript
jQuery实现图片左右滚动特效
2020/04/20 Javascript
基于jQuery全屏焦点图左右切换插件responsiveslides
2015/09/07 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
2015/11/01 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
2016/04/01 Javascript
ES6所改良的javascript“缺陷”问题
2016/08/23 Javascript
js实现点击切换checkbox背景图片的简单实例
2017/05/08 Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
2018/05/31 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
[01:05:40]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第三场
2014/05/24 DOTA
[01:31:02]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第一场
2019/08/22 DOTA
Python enumerate遍历数组示例应用
2008/09/06 Python
Python入门篇之编程习惯与特点
2014/10/17 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
TensorFlow实现非线性支持向量机的实现方法
2018/04/28 Python
python 获取页面表格数据存放到csv中的方法
2018/12/26 Python
Python利用lxml模块爬取豆瓣读书排行榜的方法与分析
2019/04/15 Python
python 读写文件包含多种编码格式的解决方式
2019/12/20 Python
Jupyter Notebook打开任意文件夹操作
2020/04/14 Python
python 判断一组数据是否符合正态分布
2020/09/23 Python
CSS3中Animation动画属性用法详解
2016/07/04 HTML / CSS
Jimmy Choo美国官网:周仰杰鞋子品牌
2018/06/08 全球购物
房屋改造计划书
2014/01/10 职场文书
一名老师的自我评价
2014/02/07 职场文书
寄语学生的话
2014/04/10 职场文书
机关干部作风建设剖析材料
2014/10/23 职场文书
如何写一份具有法律效力的借款协议书?
2019/07/02 职场文书
Python实现文本文件拆分写入到多个文本文件的方法
2021/04/18 Python