php和mysql网站模板 js读取本地json文件数据( 二 )


varbox = [{name : 'a', age : 1, height : 177},{name : 'b', age : 2, height : 188}]; var json = JSON.stringify(box, function (key, value) {switch (key) {case 'name' :return'Mr.' + value;case 'age' :returnvalue + '岁';default:returnvalue;} }, 4); alert(json); PS:保留缩进除了是普通的数字,也可以是字符 。
还有一种方法可以自定义过滤一些数据,使用toJSON()方法,可以将某一组对象里指定返回某个值 。
varbox = [{name : 'a', age : 1, height : 177, toJSON : function () {return this.name; }},{name : 'b',age : 2, height : 188, toJSON : function () {return this.name; }}]; var json = JSON.stringify(box); alert(json); PS:由此可见序列化也有执行顺序,首先先执行toJSON()方法;如果应用了第二个过滤参数,则执行这个方法;然后执行序列化过程,比如将键值对组成合法的JSON字符串,比如加上双引号 。如果提供了缩进,再执行缩进操作 。
解析JSON字符串方法parse()也可以接受第二个参数,这样可以在还原出JavaScript值的时候替换成自己想要的值 。
varbox = '[{"name" : "a","age" : 1},{"name" : "b","age" : 2}]'; var json = JSON.parse(box, function (key, value) {if (key == 'name') {return'Mr.' + value;} else {returnvalue;} }); alert(json[0].name);总结通过本篇文章,你可以学习到以下知识点:
1.JSON简单值;
2.对象;
3.数组;

推荐阅读