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

所属分类: 网络编程 / JavaScript 阅读数: 1126
收藏 0 赞 0 分享
复制代码 代码如下:

<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'),
更多精彩内容其他人还在看

js实现图片上传预览原理分析

这篇文章主要为大家详细介绍了js实现图片上传预览的原理,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Angular限制input框输入金额(是小数的话只保留两位小数点)

最近做项目遇到这样的需求输入框要求输入金额,只能输入数字,可以是小数,必须保留小数点后两位。下面分为两部分代码给大家介绍实现代码,需要的的朋友参考下吧
收藏 0 赞 0 分享

详解vue-cli + webpack 多页面实例配置优化方法

本篇文章主要介绍了详解vue-cli + webpack 多页面实例配置优化方法,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)

本篇文章主要介绍了React-Native解决键盘遮挡问题(Keyboard遮挡问题),具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

JavaScript反弹动画效果的实现代码

本文通过实例代码给大家介绍了js反弹动画效果的实现代码,需要的朋友参考下吧
收藏 0 赞 0 分享

解决vue2.x中数据渲染以及vuex缓存的问题

本篇文章主要介绍了vue2.x中请求之前数据显示以及vuex缓存的问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

jsonp跨域请求详解

这篇文章主要为大家详细介绍了jsonp跨域请求的相关资料,激活了所有接口支持浏览器跨域请求的封装,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

解决vue里碰到 $refs 的问题的方法

本篇文章主要介绍了解决vue里碰到 $refs 的问题的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

js自定义弹框插件的封装

这篇文章主要为大家详细介绍了js自定义弹框插件的简单封装,自己封装一个弹框插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

深入理解vue $refs的基本用法

本篇文章主要介绍了深入理解vue $refs的基本用法 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多