Yanıtlar:
[1,2,3,4,5,6][1,2,3];
^ ^
| |
array + — array subscript access operation,
where index is `1,2,3`,
which is an expression that evaluates to `3`.
İkincisi [...]
bir dizi olamaz, bu yüzden bir dizi abonelik işlemi. Ve bir alt simge işleminin içeriği, işlenenlerin sınırlı bir listesi değil, tek bir ifadedir.
Virgül operatörü hakkında daha fazla bilgiyi buradan edinebilirsiniz .
Çünkü (1,2) == 2
. Virgül operatörüne rastladınız (veya burada daha basit bir açıklama ).
Virgüller bir bildirim listesi, parametre listesi, nesne veya dizi değişmezinde görünmedikçe, diğer ikili işleçler gibi davranırlar. x, y
değerlendirir x
, sonra değerlendirir y
ve sonuç olarak verir.
[1,2,3,4,5,6][1,2,3];
Burada ikinci kutu yani son öğe [1,2,3]
olur [3]
, böylece örneğin [1,2,3,4,5,6]
bir dizide kalırsanız sonuç 4 olur
var arr=[1,2,3,4,5,6];
arr[3]; // as [1,2,3] in the place of index is equal to [3]
benzer şekilde
*var arr2=[1,2,3,4,5,6];
// arr[1,2] or arr[2] will give 3*
Ama arasına bir + operatörü yerleştirdiğinizde, ikinci köşeli parantez indeksten bahsetmek için değildir. Oldukça başka bir dizi Bu yüzden olsun
[1,2,3] + [1,2] = 1,2,31,2
yani
var arr_1=[1,2,3];
var arr_2=[1,2];
arr_1 + arr_2; // i.e. 1,2,31,2
Temel olarak ilk durumda dizi dizini olarak kullanılır ve ikinci durumda kendisi bir dizidir.