您的位置:首页 > Web前端 > JavaScript

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

2010-02-23 00:00 791 查看
<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'),
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: