Sephy Posted July 15, 2011 Report Share Posted July 15, 2011 (edited) Tatad man ir pienemsim masivs kura atrodas daudzas attēlu atrašanaš vietas var galerija = new Array('bildes/koki.jpg', 'bildes/loki.jpg', 'rezerve/lokirez.jpg') Kā lai paņem, piemeram galerija[0]='bildes/koki.jpg' lokāciju un uzdod to nevis kā string, bet gan kā koki.jpg bildi?? Edited July 15, 2011 by Sephy Quote Link to comment Share on other sites More sharing options...
0 Grey_Wolf Posted July 15, 2011 Report Share Posted July 15, 2011 Šijos abos teikumos ir acīmredzama pretruna, to taču tu saproti? nē , es tieši gribēju uzsvērt, ka izmantot tā var, bet nebūt tas nav labi ... --- P.S. domāju ka topiks aizgājis jau reliģiskos strīdos :( Quote Link to comment Share on other sites More sharing options...
0 codez Posted July 15, 2011 Report Share Posted July 15, 2011 (edited) (function(){ var a=1 })(); alert(a); //un (function(){ a=1 })(); alert(a); ir atšķirīgas lietas, kamēr a=new Array(1,2,3); //un a=[1,2,3]; ir identiskas. Tieši tāpēc tavs apgalvojums, ka var mierīgi neizmantot "var" pirms mainīgā ir aplams un pietam pirmajā citātā tu apgalvo, ka mierīgi var neizmantot "var", kamēr otrajā tu ar retoriski jautājumu apgalvo, ka tā tomēr nevar darīt. Edited July 15, 2011 by codez Quote Link to comment Share on other sites More sharing options...
0 Grey_Wolf Posted July 15, 2011 Report Share Posted July 15, 2011 (function(){ var a=1 })(); alert(a); //un (function(){ a=1 })(); alert(a); ir atšķirīgas lietas, kamēr a=new Array(1,2,3); //un a=[1,2,3]; ir identiskas. abos tavos piemēros ir neliela kļūda, uz vecām JS versijām būs kļūdas ziņojums, VAI kods vienkārši neizpildīsies :( Par to arī šis stāsts. --- Vispār jau pajautāju @rATRIJS kāpēc viņuprāt izmantot new array() ir Slikti (nevis nedrīkst, bet tieši kāpēc tā nedarīt). -- P.S. Flame OFF. Negribu reliģiskos strīdus ...( un nav īpašas jēgas arī, kopā [vismaz foruma ietvaros] jādzīvo ) Quote Link to comment Share on other sites More sharing options...
0 marrtins Posted July 15, 2011 Report Share Posted July 15, 2011 Es ceru, ka tu zini, ka var izmanto, lai definētu, ka mainīgais ir lokāls, kamēr bez var, tas ir globāls? Tam ir konkrēts viennozīmīgs lietojums. Es biki precizēšu: izmantojot "var" tiek definēts mainīgais tekošajā scope un uz leju pa scope kāpnēm. Bez "var", tiek meklēts tāds pats mainīgais, bet uz augšu pa scope kāpnēm, līdz atduras globālajā scope vai arī pret undefined. P.S. scope kāpnes - hehehe >:) var v=1; function b(){ alert(v); } function a(){ var v=2; (function(){ alert(v); })(); var c=function(){ alert(v); } b(); return c; } var f=a(); b(); f(); 2 1 1 2 Quote Link to comment Share on other sites More sharing options...
0 codez Posted July 18, 2011 Report Share Posted July 18, 2011 Starp citu, vēl vien lieta par "var" lietošanas un nelietošanas atšķirību globālā scopē. Izveidojot mainīgo, tas tiek pieškirts kā propertijs skopes objektam, taču šim propertijam ir iekšējie flag-i. Ir tāds flags DontDelete. Ja mainīgais tiek veidots ar var šis flags tiek ielikts, ja nē, tad nē. Ja šāds flags tiek pielikt, tad mainīgo nevar izdzēst ar delete operātoru. Tāpat DontDelete netiek piliekts, ja mainīgais tiek veidots kā globālā objekta propertijs (this.c). Šo demonstrē šis js piemērs: var a=1; b=2; this.c=3; alert(typeof a); //number alert(typeof b); //number alert(typeof c); //number delete a; delete b; delete c; alert(typeof a); //number alert(typeof b); //undefined alert(typeof c); //undefined Šo gan testēt vajag caur js failu, nevis caur konsoli, jo consolē kods tiek nedaudz savādāk palaists. Quote Link to comment Share on other sites More sharing options...
0 EdgarsK Posted July 18, 2011 Report Share Posted July 18, 2011 (edited) var A = 1; function b(){ A = 2; } function c(){ var A = 3; alert(A); // Output 3 } alert(A); //Output: 2 // Masivu papildinasana // v1 var m = []; m.push('a','b','c'); console.info(m); // Array(0=>'a',1=>'b',2=>'c'); // v2 var m = new Array(); m.push('a','b','c'); console.info(m); // Array(0=>'a',1=>'b',2=>'c'); // Jau gatavi masivi // v1 var m = ['a','b','c']; console.info(m); // Array(0=>'a',1=>'b',2=>'c'); // v2 var m = new Array('a','b','c'); console.info(m); // Array(0=>'a',1=>'b',2=>'c'); // Sudigs variants // v1 var m = []; m[0]='a'; m[1]='b'; m[2]='c'; console.info(m); // Array(0=>'a',1=>'b',2=>'c'); // v2 var m = new Array(); m[0]='a'; m[1]='b'; m[2]='c'; console.info(m); // Array(0=>'a',1=>'b',2=>'c'); Edited July 18, 2011 by EdgarsK Quote Link to comment Share on other sites More sharing options...
0 codez Posted July 18, 2011 Report Share Posted July 18, 2011 Vēl viena lieta, ir tāda, ka jaunajā ECMA Sript 5 versijā, mainīgos var definēt tikai ar "var", vai kā propertijus un bez var tiek mesta kļūda: "use strict"; var a=1; this.b=2; alert(a); //1 alert(b); //2 c=3; //Uncaught ReferenceError: c is not defined Quote Link to comment Share on other sites More sharing options...
Question
Sephy
Tatad man ir pienemsim masivs kura atrodas daudzas attēlu atrašanaš vietas
Kā lai paņem, piemeram galerija[0]='bildes/koki.jpg' lokāciju un uzdod to nevis kā string, bet gan kā koki.jpg bildi??
Edited by SephyLink to comment
Share on other sites
22 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.