以下每个数组定义之间的区别是什么。
var myArray = [];
var myArray = {};
var myArray = new Array();
发布于 2011-02-27 04:32:15
第一个和第三个是等价的,并创建一个新的数组。第二个方法创建一个新的空对象,而不是一个数组。
var myArray = []; //create a new array
var myArray = {}; //creates **a new empty object**
var myArray = new Array(); //create a new array
发布于 2011-02-27 04:42:15
var myObject = {};
等同于var myObject = new Object();
因此,第二个示例不是一个Array
,而是一个通用Object
。
这可能会造成混淆,因为Array
是一个类,而Object
是一个类--更准确地说,Array
是Object
的子类。因此,大体上来说,Object
语义适用于Array
var o = [];
o.push('element1');
o.push('element2');
o['property1'] = 'property value'; // define a custom property.
console.log(o.property1);
console.log(o.length); // Outputs '2' as we've only push()'ed two elements onto the Array
https://stackoverflow.com/questions/5129544
复制相似问题