我是JavaScript的新手,有人告诉我,他说“严格来说,JavaScript没有多维数组和关联数组”。但在一本书中,我看到了以下内容:
var my_cars=Array();
my_cars["cool"]="Mustang";
$a=Array(Array(0,1),2);
所以他的观点是错误的吗?我是对的吗?
我是JavaScript的新手,有人告诉我,他说“严格来说,JavaScript没有多维数组和关联数组”。但在一本书中,我看到了以下内容:
var my_cars=Array();
my_cars["cool"]="Mustang";
$a=Array(Array(0,1),2);
JavaScript有数组,数组的元素可以是其他数组。
然而,JavaScript中有属性的Object
,而不是关联数组。
[]
比Array()
要好得多。此外,为什么不显式地实例化一个Array
对象,然后依赖于Array
返回一个新对象?Array
上的属性cool
。$a
标识符?为什么再次不使用new
运算符?var myArray = new Array();
myArray['row1'] = { 'col1':'BLARGH!!!', 'col2':'HONK!!!!' }
myArray['row2'] = { 'col1':'FOO!!!', 'col2':'BAR!!!!' }
myArray['row3'] = { 'col1':'FOUR!!!', 'col2':'GREGS!!!' }
document.write(myArray['row2']['col1'] + " - " + myArray['row3']['col2']);
//will output: FOO!!! - GREGS!!
var myArray = new Array(); myArray[0] = {0:1}; alert(myArray[0][0]);
- Melsimy_cars["cool"]="Mustang";
这行代码实际上并没有向数组中添加一个值,而是向对象 my_cars
添加了一个新的属性和值。以下代码也能达到同样的效果:”var my_cars = new Function();
my_cars["cool"]="Mustang";
alert(my_cars["cool"]);
var c = new Object();
c["cool"]="Corvette";
alert(c["cool"]);