გამოიწერე YouTube-ის არხიyoutube logoგამოწერა

პრიმიტიული და რეფერენს ტიპების შედარება

ჯავაკრიპტის ერთ-ერთი საინტერესო თემაა თუ როგორ ხდება კომპიუტერის მეხსიერებაში ინფორმაციის შენახვა და შემდეგ მათზე წვდომა.

პრიმიტიული ტიპები.

პრიმიტიული ტიპები (მაგალითად: number, string, boolean, null, undefined, symbol, bigint) მეხსიერებაში ინახება უშუალოდ მათი მნიშვნელობებით. როდესაც თქვენ პრიმიტიული ტიპს ანიჭებთ სხვა ცვლადს, იქმნება ამ მონაცემის კოპია.

მაგალითი:

let a = 10;
let b = a; // აქ b იღებს a-ს მნიშვნელობის კოპიას
b = 20;

console.log(a); // 10
console.log(b); // 20

მოცემულ მაგალითში, a და b ერთმანეთს აღარ უკავშირდებიან. b ცვლის საკუთარ მნიშვნელობას ისე, რომ a უცვლელი რჩება.


რეფერენს ტიპები.

ობიექტები (მაგალითად: object, array, function) მეხსიერებაში ინახება რეფერენსით (მიმთითებლით). ეს ნიშნავს, რომ ცვლადი ინახავს მხოლოდ მეხსიერების მისამართს, სადაც ობიექტი მდებარეობს, და არა თავად ობიექტს.

როდესაც ობიექტს ანიჭებთ სხვა ცვლადს, ეს ცვლადი იგივე რეფერენსს იღებს, რაც ნიშნავს, რომ ორივე ცვლადი ერთსა და იმავე ობიექტზე მიუთითებს.

მაგალითი:

let obj1 = { name: "Giorgi" };
let obj2 = obj1; // obj2 იღებს obj1-ის რეფერენსს (მიმთითებელს)

obj2.name = "Nino";

console.log(obj1.name); // "Nino"
console.log(obj2.name); // "Nino"

ზემოთ აღწერილ მაგალითში, obj1 და obj2 ორივე მიუთითებს ერთსა და იმავე ობიექტზე, ამიტომ ცვლილება ერთზე ავტომატურად აისახება მეორეზეც.


რეფერენსის მნიშვნელობა

JavaScript-ში რეფერენსი არის გზა, რომლითაც ობიექტები ან მონაცემთა სტრუქტურები ინახება მეხსიერებაში. როდესაც ცვლადს აკავშირებთ ობიექტთან, ეს არ ნიშნავს, რომ ცვლადი ინახავს თვით ობიექტს. ამის ნაცვლად, ის ინახავს რეფერენსს, რომელიც მიუთითებს ობიექტზე მეხსიერებაში.

რეფერენსები საშუალებას აძლევს პროგრამას იმუშაოს ერთი და იმავე ობიექტზე სხვადასხვა ცვლადის მეშვეობით. ეს ნიშნავს, რომ თუ ერთ ცვლადში რეფერენსის მეშვეობით რაიმეს შეცვლით, ეს ცვლილება აისახება სხვა ცვლადებზეც, რომლებიც ასევე იმავე ობიექტზე მიუთითებენ.

რეფერენსების მართვა მნიშვნელოვანია JavaScript-ის მუშაობაში, რადგან ის გავლენას ახდენს მონაცემთა გადაცემასა და შენახვაზე. პრიმიტიული ტიპები (როგორიცაა რიცხვები და სტრინგები) ყოველთვის ინახება მნიშვნელობის მიხედვით, ხოლო ობიექტები და მასივები ინახება რეფერენსით.

რეფერენსებზე დაფუძნებული მუშაობა უფრო მოქნილ და ეფექტიან კოდს ქმნის, თუმცა აუცილებელია ფრთხილად იყოთ, რათა შემთხვევით არ შეცვალოთ მონაცემები, რომლებიც შესაძლოა სხვა ადგილებში გამოიყენებოდეს.

კურსში შემავალი თემები

🔗 js🔗 javascript

დამატებითი რესურსები

სხვა კატეგორიები

შეისწავლეთ ვებდეველოპმენტის ენები სრულიად უფასოდ, ისეთები როგორებიცაა Javascript, HTML, CSS და კიდევ სხვა მრავალი ენა

ბოლოს დაწერილი ბლოგები პროგრამირებაზე

ქვემოთ მოცემულია უახლესი 3 ბლოგი პროგრამირების თემატიკასთან დაკავშირებით