JavaScript'teki özelliklere erişmenin en yaygın iki yolu nokta ve köşeli parantezdir. Her ikisi de value.x and value[x]
değere sahip bir mülke erişir, ancak aynı mülke sahip olması gerekmez. Aradaki fark x'in nasıl yorumlandığıdır. Nokta kullanırken, noktadan sonraki bölüm geçerli bir değişken adı olmalı ve doğrudan özelliği adlandırmalıdır. Köşeli parantez kullanıldığında, parantezler arasındaki ifade özellik adını almak için değerlendirilir. Value.x, “x” adlı değerin özelliğini getirirken, [x] değeri x ifadesini değerlendirmeye çalışır ve sonucu özellik adı olarak kullanır.
Yani, ilgilendiğiniz mülkün "uzunluk" olarak adlandırıldığını biliyorsanız, diyorsunuz value.length
. Değişkende tutulan değerle adlandırılan özelliği ayıklamak istiyorsanız i
, diyorsunuz value[i]
. Ve özellik adları adlı bir özelliğe erişmek istiyorsanız, herhangi bir dize olabilir çünkü “2”
ya “John Doe”
sen köşeli parantezleri kullanmalısınız: value[2] or value["John Doe"]
. Bu özellik, “2” nor “John Doe”
geçerli bir değişken adı olmadığından ve nokta gösterimi ile erişilemediğinden , özelliğin tam adını önceden bilmenize rağmen geçerlidir.
Dizilerde
Dizideki öğeler özelliklerde saklanır. Bu özelliklerin adları sayılar olduğundan ve genellikle adlarını bir değişkenten almamız gerektiğinden, bunlara erişmek için parantez sözdizimini kullanmamız gerekir. Bir dizinin length özelliği bize kaç öğe içerdiğini söyler. Bu özellik adı geçerli bir değişken adıdır ve adını önceden biliyoruz, bu nedenle bir dizinin uzunluğunu bulmak için genellikle yazmanız array.length
daha kolay olduğu için yazarsınız array["length"]
.