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 渐变下拉菜单
Dec 15 Javascript
通过url查找a元素并点击
Apr 09 Javascript
JavaScript中的console.group()函数详细介绍
Dec 29 Javascript
JavaScript使用Prototype实现面向对象的方法
Apr 14 Javascript
Javascript实现可旋转的圆圈实例代码
Aug 04 Javascript
jquery实现实时改变网页字体大小、字体背景色和颜色的方法
Aug 05 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
Jul 12 Javascript
JavaScript与JQUERY获取元素的宽、高和位置
Feb 26 Javascript
基于JavaScript实现无限加载瀑布流
Jul 21 Javascript
react路由配置方式详解
Aug 07 Javascript
Vue + Vue-router 同名路由切换数据不更新的方法
Nov 20 Javascript
vue-cli 3 全局过滤器的实例代码详解
Jun 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+DBM的同学录程序(2)
2006/10/09 PHP
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
php面向对象全攻略 (十五) 多态的应用
2009/09/30 PHP
PHP7.0安装笔记整理
2015/08/28 PHP
Composer设置忽略版本匹配的方法
2016/04/27 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
js jquery验证银行卡号信息正则学习
2013/01/21 Javascript
JS+CSS实现一个气泡提示框
2013/08/18 Javascript
Javascript改变CSS样式(局部和全局)
2013/12/18 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
详解Python中logging日志模块在多进程环境下的使用
2016/12/26 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
Three.js入门之hello world以及如何绘制线
2017/09/25 Javascript
vue-cli项目优化方法- 缩短首屏加载时间
2018/04/01 Javascript
jquery ajax加载数据前台渲染方式 不用for遍历的方法
2018/08/09 jQuery
使用kbone解决Vue项目同时支持小程序问题
2019/11/08 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
Python时间模块datetime、time、calendar的使用方法
2016/01/13 Python
python Django批量导入不重复数据
2016/03/25 Python
Python实现二维数组输出为图片
2018/04/03 Python
python读取中文txt文本的方法
2018/04/12 Python
Python shelve模块实现解析
2019/08/28 Python
Python with语句和过程抽取思想
2019/12/23 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
pyspark 随机森林的实现
2020/04/24 Python
python文件路径操作方法总结
2020/12/21 Python
使用HTML5的表单验证的简单示例
2015/09/09 HTML / CSS
家得宝官网:The Home Depot(全球最大的家居装饰专业零售商)
2018/12/17 全球购物
iKRIX意大利网上商店:男女豪华服装和配件
2019/10/09 全球购物
八年级语文教学反思
2014/02/11 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
2014年技术部工作总结
2014/12/12 职场文书
2015年女工委工作总结
2015/07/27 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书
Python装饰器详细介绍
2022/03/25 Python
漫画《催眠麦克风-Dawn Of Divisions》第二卷PV公开
2022/04/05 日漫