php böyle yapabilirdi:
$key1 = 1;
$key2 = 1;
$array[$key1][$key2] = 'hi';
javascript i ile bu çalıştı:
key1 = 1;
key2 = 1;
var array = new Array();
array[key1][key2] = 'hi';
ama işe yaramadı. nasıl ben javascript aynı şeyi yapabilir?
Senin sorunun bu değerleri atamadan önce iç dizi oluşturmaya ihtiyaç olduğunu
var key1 = 1;
var key2 = 1;
var array = [];
array[key1]=[];
array[key1][key2] = 'hi';
Yoksa birinde tüm yapabilirdi:
var array=[['hi']]
Ayrıca, varolan bir öğe güncelliyoruz sürece belirli endekslere atama kaçınmalısınız. Yukarıdaki ilk örnek otomatik bir unsur katacak
array[0]=undefined;
Belirli tuşları ve sadece dizinleri kullanmak istiyorsanız, sözlükler veya nesneleri (sözlükler ve nesneler i javascript aynı şey) kullanmalısınız
JavaScript key1 ile sorun ve dizi tanımsız olmak key2 boyutlara sahip. Bu sorunu gidermek için, bunlar yapabilir değişiklikler şunlardır:
var key1 = 1;
var key2 = 1;
// define "array" as an empty array:
var array = [];
// define "array[key1] as an empty array inside that array
// (your second dimension):
array[key1] = [];
array[key1][key2] = 'hi';
PHP bazı büyü yapar - sadece 2 anahtarları temin edebilir ve PHP "Ne demek istediğini bilir" ve bu konuda düşünmeden $key1 ve $key2 boyutları tanımlamak olacaktır. Bakınız: PHP: arrays, If $arr doesn't exist yet, it will be created, so this is also an alternative way to create an array. To change a certain value, assign a new value to that element using its key.
JavaScript dizi yaratma konusunda daha açık olması gerekir.
Sen düzgün uygulamaları bulabilirsiniz. Örneğin, here, her sütun için bir dizi oluşturma, daha sonra satır ve bir dizi yaratmak bir fonksiyonu olan bir şekilde (diğer bir şekilde anidated olabilir, ama ...)
var sDataArray=MultiDimensionalArray(7,2);
//alert(sDataArray[0][0]);
function MultiDimensionalArray(iRows,iCols)
{
var i;
var j;
var a = new Array(iRows);
for (i=0; i < iRows; i++)
{
a[i] = new Array(iCols);
for (j=0; j < iCols; j++)
{
a[i][j] = "";
}
}
return(a);
}
The thing is, you just can't work the arrays just like PHP ones. Must treat them the way they really are: an array of arrays (of arrays (of arrays (of arrays)...)). Good luck.