JavaScript对象的访问与遍历

JavaScript语言是基于对象的
服务器君一共花费了281.553 ms进行了6次数据库查询,努力地为您提供了这个页面。
试试阅读模式?希望听取您的建议

从服务器返回一个JSON字符串,内容如下:

var str = 
[
{"id":"328482","user_id":"54","time":"1320214671"},
{"id":"328283","user_id":"43","time":"1320046877"},
{"id":"327075","user_id":"43","time":"1318740675"},
{"id":"326153","user_id":"60","time":"1318144953"}
]

可以这么引用远程链接,该 JSON 是一个对象。

<script src="http://www.nowamagic.net/json.php" type="text/javascript"></script>

如何遍历这个 JSON 对象呢?从网上搜到一个方法,能用。

function allPrpos(obj) {     
    // 用来保存所有的属性名称和值    
    var props = "";    
    // 开始遍历    
    for(var p in obj){     
       // 方法    
       if(typeof(obj[p])=="function"){     
            obj[p]();    
        }else{     
            // p 为属性名称,obj[p]为对应属性的值    
            props+= p + "=" + obj[p] + " ";    
        }     
    }     
    // 最后显示所有的属性    
    //alert(props);    
	//document.getElementById("shows").innerHTML = props;
} 

遍历结果如下:

0=[object Object] 1=[object Object] 2=[object Object] 3=[object Object] 

可以通过这样的方式来访问对象的属性:str[0]["id"],因为对象里面也是对象。

直接访问对象obj的属性a的值,有两种方法:

  • obj.a
  • obj["a"]

但若是用for/in语句访问对象的属性值,则必须用“[]”运算符:

for(m in obj){  
  alert(obj[m]);  
  alert(obj.m);   //这里会弹出undefined  
}  

为什么呢?因为for/in循环会把对象的属性名作为字符串赋给变量m。

javascript的数组不过是一种特殊的对象,因此:

var arr = new Array();  
arr[0] = 10;  
arr['a'] = 20;  
  
for(m in arr){  
	alert(m);  //弹出0和a  
	alert(arr[m]);  //弹出10和20  
}  

本文地址:http://www.nowamagic.net/librarys/veda/detail/661,欢迎访问原出处。

不打个分吗?

转载随意,但请带上本文地址:

http://www.nowamagic.net/librarys/veda/detail/661

如果你认为这篇文章值得更多人阅读,欢迎使用下面的分享功能。
小提示:您可以按快捷键 Ctrl + D,或点此 加入收藏

大家都在看

阅读一百本计算机著作吧,少年

很多人觉得自己技术进步很慢,学习效率低,我觉得一个重要原因是看的书少了。多少是多呢?起码得看3、4、5、6米吧。给个具体的数量,那就100本书吧。很多人知识结构不好而且不系统,因为在特定领域有一个足够量的知识量+足够良好的知识结构,系统化以后就足以应对大量未曾遇到过的问题。

奉劝自学者:构建特定领域的知识结构体系的路径中再也没有比学习该专业的专业课程更好的了。如果我的知识结构体系足以囊括面试官的大部分甚至吞并他的知识结构体系的话,读到他言语中的一个词我们就已经知道他要表达什么,我们可以让他坐“上位”毕竟他是面试官,但是在知识结构体系以及心理上我们就居高临下。

所以,阅读一百本计算机著作吧,少年!

《C专家编程》 林登 (LinDen.P.V.D) (作者), 徐波 (译者)

《C专家编程》展示了最优秀的C程序员所使用的编码技巧,并专门开辟了一章对C++的基础知识进行了介绍。书中C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C++等问题进行了细致的讲解和深入的分析。全书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。《C专家编程》可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员,《C专家编程》可以帮助他们站在C的高度了解和学习C++。

更多计算机宝库...