Reference (Referans)

Objeler asla kopyalanmaz. Referansla iletilir. Obje referansı, bir nesneye atıfta bulunan bir değerdir. new operatörü veya nesne literal sözdizimi kullanarak bir nesne oluşturduğunuzda, JavaScript bir nesne oluşturur ve ona bir referans atar.

İşte obje literal sözdizimi kullanarak bir nesne oluşturma örneği:

var object = {
  foo: "bar";
}

İşte new operatörü kullanarak bir nesne oluşturma örneği:

var object = new Object();
object.foo = "bar";

Bir nesne referansını bir değişkene atadığınızda, değişken yalnızca nesneye referans tutar, nesneyi kendisini değil. Bu, nesne referansını başka bir değişkene atarsanız, her iki değişkenin de aynı nesneye işaret edeceği anlamına gelir.

Örneğin:

var object1 = {
  foo: "bar",
};

var object2 = object1;

console.log(object1 === object2); // Sonuç: true

Yukarıdaki örnekte, obje1 ve obje2 hem aynı nesneye referans tutan değişkenlerdir. === operatörü referansları karşılaştırmak için kullanılır, nesneleri değil ve her iki değişkenin de aynı nesneye referans tuttuğu için true döndürür.

Object.assign() yöntemini kullanarak, var olan bir nesnenin kopyası olan yeni bir nesne oluşturabilirsiniz.

Aşağıda referansla bir nesne örneği verilmiştir.

// Bir pizzam olduğunu düşünelim
let myPizza = { slices: 5 };
// Ve onu sizinle paylaştım
let yourPizza = myPizza;
// Ben bir dilim daha yiyorum
myPizza.slices = myPizza.slices - 1;
let numberOfSlicesLeft = yourPizza.slices;
// Şimdi 4 dilimiz var çünkü myPizza ve yourPizza
// aynı pizza nesnesine referans verin.
let a = {},
  b = {},
  c = {};
// a, b ve c her biri
// farklı boş nesne
a = b = c = {};
// a, b ve c hepsi
// aynı boş nesneye referans verin

results matching ""

    No results matching ""