რა არის არაღრმა ასლი JavaScript?
რა არის არაღრმა ასლი JavaScript?

ვიდეო: რა არის არაღრმა ასლი JavaScript?

ვიდეო: რა არის არაღრმა ასლი JavaScript?
ვიდეო: JavaScript Objects: Shallow and Deep Copy | All You Need to Know in 10 mins! 2024, მაისი
Anonim

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

ამის გათვალისწინებით, რა არის არაღრმა ასლი JavaScript-ში?

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

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

შესაბამისად, რა არის ღრმა ასლი და ზედაპირული ასლი JavaScript-ში?

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

რატომ გვჭირდება ზედაპირული ასლი?

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

გირჩევთ: