Ի՞նչ է JavaScript-ի մակերեսային պատճենը:
Ի՞նչ է JavaScript-ի մակերեսային պատճենը:

Video: Ի՞նչ է JavaScript-ի մակերեսային պատճենը:

Video: Ի՞նչ է JavaScript-ի մակերեսային պատճենը:
Video: Python #5 Աշխատում ենք List դատա ստրուկտուրաների հետ #ծրագրավորում 2024, Ապրիլ
Anonim

Մակերեսային պատճեն մի քիչ իմաստուն է պատճենել օբյեկտի. Ստեղծվում է նոր օբյեկտ, որն ունի ճշգրիտ պատճենել սկզբնական օբյեկտի արժեքները: Եթե օբյեկտի դաշտերից որևէ մեկը հղումներ է այլ օբյեկտների, ապա պարզապես հղումային հասցեներն են պատճենված այսինքն, միայն հիշողության հասցեն է պատճենված.

Հաշվի առնելով սա՝ ի՞նչ է JavaScript-ում մակերեսային պատճենը:

Մակերեսային պատճեն մի քիչ իմաստուն է պատճենել օբյեկտի. Ստեղծվում է նոր օբյեկտ, որն ունի ճշգրիտ պատճենել սկզբնական օբյեկտի արժեքները: Եթե օբյեկտի դաշտերից որևէ մեկը հղումներ է այլ օբյեկտների, ապա պարզապես հղումային հասցեներն են պատճենված այսինքն, միայն հիշողության հասցեն է պատճենված.

Երկրորդ, ի՞նչ է զանգվածի մակերեսային պատճենը: Ա Զանգվածի պատճենների մակերեսային պատճենը միայն տարրերը Զանգված , անկախ նրանից՝ դրանք հղման տեսակներ են, թե արժեքային տեսակներ, բայց դա այդպես չէ պատճենել այն օբյեկտները, որոնց հղումները վերաբերում են: Անդրադարձները նորում Զանգված մատնանշեք այն նույն առարկաները, որոնց հղումները բնօրինակում են Զանգված մատնանշել.

Հետևաբար, ի՞նչ է JavaScript-ում խորը պատճենը և մակերեսային պատճենը:

Ա խորը պատճեն նշանակում է, որ նոր փոփոխականի բոլոր արժեքներն են պատճենված և անջատված է սկզբնական փոփոխականից: Ա մակերեսային պատճեն նշանակում է, որ որոշակի (ենթ) արժեքներ դեռ կապված են սկզբնական փոփոխականի հետ: Իրոք հասկանալու համար պատճենահանում , դուք պետք է մտնեք, թե ինչպես JavaScript պահպանում է արժեքները:

Ինչու՞ է մեզ անհրաժեշտ մակերեսային պատճենը:

Ամեն անգամ, երբ մենք օգտագործել կլոնավորման մեթոդի լռելյայն իրականացումը մենք ստանալ մակերեսային պատճեն օբյեկտը նշանակում է, որ այն ստեղծում է նոր օրինակ և պատճենները օբյեկտի ամբողջ դաշտը այդ նոր օրինակին և վերադարձնում է որպես օբյեկտի տեսակ, կարիք ունենք այն բացահայտորեն վերադարձնել մեր սկզբնական օբյեկտին: Սա մակերեսային պատճեն օբյեկտի.

Խորհուրդ ենք տալիս: