js中 数组 与 对象 的区别
数组表示有序数据的集合,而对象表示无序数据的集合。
数组和对象的另一个区别是,数组的数据没有”名称”(name),对象的数据有”名称”(name)。
1.创建方式不同
利用构造函数创建对象(常用)
var obj = new Object();
obj.name = “wang”;
obj.age = 18;
字面量方式
var obj = {
name : “wang”,
call : function () { console.log(“test”) } //obj.call()
}
var array = new Array(“red”,”green”,”yellow”);
var array = [“red”,”green”,”yellow”];
2.对象没有长度
console.log(obj.length) //undefined
console.log(array.length); //3
3.调用的方法不同
console.log(obj.name);
console.log(array[1]);
4.因为没有长度,所以 对象 没有 for 循环。
5.都可以使用 for in 循环
6.对象的键值惟一,数组可以重复
对象的键值如果重复,下面的会覆盖上面的。