对象和数组的不同点:
数组 a=[1,2,3,4],
对象 a={name:1,age:2,weight:3,height:4},
(1)创建方式不同:
- 数组表示有序数据的集合,而对象表示无序数据的集合。
- 数组的数据没有”名称”(name…),对象的数据有”名称”(name…)。
(2)调用方法不同
(3)对象键值唯一,数组可以重复
(4)对象没有长度,不能用for循环
遍历对象不能通过for循环因为对象无序 可以通过for -in
var json={
"name":“小明”,
“age”:“10”,
“sex”:"男"
};
for(var key in json){
console.log(key); //key里是对象中属性的名字
console.log(json[key]);
}
for in在数组和对象中的不同点
//在对象中
function myFunction(){
var x;
var txt="";
var person={name:"Bill",lname:"Gates",age:56};
for (x in person){ // 循环对象时,x对标对象属性 (name...)
txt=txt + person[x];
}
document.getElementById("demo").innerHTML=txt;
}
//在数组中
function myFunction(){
var x;
var txt="";
var person=[1,2,3];
for (x in person){ // 循环数组时, x 代表 索引[0...]
txt=txt + person[x];
}
document.getElementById("demo").innerHTML=txt;
}