Ob'ektlerdi jaratıw
Geyde JavaScript haqqında oylawǵa járdem beredi ob'ektler xash kestelerden basqa zat emes, 1-2-suwretde kórsetilgen sıyaqlı. Jaratıwdıń bir neshe jolı bar, yamasa ob'ektlerdi jaratıw. Birinshisi - paydalanıw konstruktorlı jańa operator. (Konstruktor jaysha jańa isletetuǵın funktsiya ob'ekt jaratıw ushın - hár qanday funktsiya bolıwı múmkin Konstruktor.) Konventsiya boyınsha JavaScript-de konstruktorlar a menen baslanadı olardı konstruktor bolmaǵan funktsiyalardan ajıratıw ushın bas hárip. Ushın Mısalı, bul kod ulıwma ob'ektti jaratadı hám málimlemeni saqlaydı oǵan ob'ektte:
Obyekt
|
Name
|
value
|
Name
|
value
|
1-2-suwret struktura obyekt
var object = new Object();
Reference túrleri ob'ektti tuwrıdan-tuwrı ózgeriwshige saqlamaydı ol tayınlanǵan, sol sebepli bul mısal daǵı ob'ekt ózgeriwshisi tiykarınan emes ob'ekt úlgisin óz ishine aladı. Bunıń ornına ol kórsetkishni (yamasa siltemenı ) ustap turadı ob'ekt ámeldegi bolǵan yad daǵı jay. Bul tiykarǵı parq ob'ektler hám baslanıwiy qádiriyatlar ortasında, sebebi baslanıwiy zat saqlanadı tuwrıdan-tuwrı ózgeriwshinde. Ob'ektti ózgeriwshige tayınlaganingizda, tiykarınan kórsetkish. Bul degeni, eger siz bir ózgeriwshin basqasına tayınlasangiz, hár bir ózgeriwshi kórsetkishtiń nusqasın aladı hám ekewi de tap sol ob'ektke shaqırıq qıladı Mısalı :
var object1 = new Object();
var object2 = object1;
Bul kod aldın ob'ektti jaratadı (jańa menen) hám uyqas jazıwlardı saqlaydı ob'ekt1. Keyinirek, object2 ge ob'ekt1 ma`nisi beriledi. Ele da bar birinshi qatarda jaratılǵan ob'ekttiń bir nusqası, lekin ekewi de ózgeriwshiler endi 1-3-suwretde kórsetilgeni sıyaqlı, sol ob'ektke belgi qılıp atır.
O'zeriwshen ob'ekt
|
Obekt1
|
|
Obyekt2
|
|
|
1-3-suwret Bir obyektke murajat etiwshi ozgeriwshiler
Ob'ektlerdi ajiratiw
JavaScript - taslandıq jıynalatuǵın til, sol sebepli sizge buǵan mútajlik qalmaydı uyqas jazıwlar túrlerinen paydalanǵande yad ajıratıw haqqında qayǵıring. Biraq, taslandıq ushın endi kerek bolmaǵan zatlardan waz keshiw jaqsılaw bolıp tabıladı kollektor bul yadtı bosatishi múmkin. Bunıń eń jaqsı usılı - ni ornatıw ob'ekt ózgeriwshisi null.
var object1 = new Object();
// do something
object1 = null; // dereference
Bul erda object1 nullga ornatilguncha jaratıladı hám isletiledi. Yadta ob'ektke siltemeler joq bolǵanda, taslandıq kollektor bul yaddan basqa zat ushın paydalanıwı múmkin. (Ajıratıw ob'ektler millionlap paydalanatuǵın kútá úlken programmalarda ásirese zárúrli bolıp tabıladı ob'ektler.)
Turlendiriwler qosıw yamasa alıp taslaw
JavaScript-dagi ob'ektlerdiń taǵı bir qızıq tárepi sonda, siz qosıwıńız hám qosıwıńız múmkin ayrıqshalıqlardı qálegen waqıtta alıp taslaw. Mısalı :
var object1 = new Object();
var object2 = object1;
object1.myCustomProperty = "Awesome!";
console.log(object2.myCustomProperty); // "Awesome!"
Bul erda myCustomProperty " Awesome! " Ma`nisi menen object1-ga qosıladı. Bul ózgeshelikke object2 de de kirisiw múmkin, sebebi eki object1 hám object2 tap sol ob'ektke belgi etedi.
Ornatılǵan túrlerdi tikarlaw
Ol menen jaratılǵan ulıwma ob'ektlerdi qanday jaratıwdı hám olar menen qanday munasábette bolıwdı kórgensiz jańa ob'ekt (). Ob'ekt túri - bul ornatılǵan maǵlıwmatlardıń bir neshesi JavaScript-ni usınıs etetuǵın túrleri. Basqa ornatılǵan túrleri kóbirek qánigelesken maqsetke muwapıq paydalanıwda hám qálegen waqıtta tastıyıqlanishi múmkin. Ornatılǵan túrleri:
Do'stlaringiz bilan baham: |