最简单的获取json数据长度方法 jsonList.length
代码如下 | 复制代码 |
var str = '[{"username":"刘小飞","BAy":"2010/06/17"},{"username":"离小P","BAy":"2010/06/11"}]'; |
alert(str.length) 其实它输出的结果长度为2
下面呢,我把Javascript的代码提供出来,为什么只提供Javascript代码呢?因为其它语言都或多或少提供了一些关于JSON的操作,唯独JavaScript没有提供多少,然后在WEB开发过程中,现在对JQuery的依赖比较多,所以话不多说了,请看代码:
代码如下 | 复制代码 |
function getJsonObjLength(jsonObj) { var Length = 0; for (var item in jsonObj) { Length++; } return Length; } |
使用办法也很简单,我们假设有个JSON对象是"JsonTemp",具体内容为{["name":"张三","age":18],["name":"李四","age":19]}。我们在使用Javascript进行操作的时候只需要如下进行就可以了:
代码如下 | 复制代码 |
var count = getJsonObjLength(JsonTemp); |
推展应用,比如需要通过遍历的方式把JSON中的每一个对象读出来,请如下操作:
代码如下 | 复制代码 |
for(i=0;i<getJsonObjLength(JsonTemp);i++){ name = JsonTemp[i].name; age = JsonTemp[i].age; } |
好了,以上就是基本应用
补充
s 中读取JSON的方法探讨
js读取JSON的方法我接触到的有两种:
方法一:函数构造定义法返回
代码如下 | 复制代码 |
var strJSON = "{name:'json name'}";//得到的JSON var obj = new Function("return" + strJSON)();//转换后的JSON对象 alert(obj.name);//json name |
方法二:js中著名的eval函数
代码如下 | 复制代码 |
var strJSON = "{name:'json name'}";//得到的JSON var obj = eval( "(" + strJSON + ")" );//转换后的JSON对象 alert(obj.name);//json name |
第二种方法需要注意的是,对象表达式{'name':'json name'}必须用“()”扩住,否则
代码如下 | 复制代码 |
var strJSON = "{name:'json name'}"; var obj = eval(strJSON); alert(obj.constructor);//String 构造函数 alert(obj.name);//undefine |
必须把对象表达式扩起来eval执行才能生成一个匿名对象!
时间: 2024-10-25 17:02:40