ugrás a tartalomhoz

Archívum - Jún 14, 2008 - Fórum téma

Javascript függvény tervezése

zoliky · 2008. Jún. 14. (Szo), 15.18
Szeretnek egy fuggvenyt letrehozni:

function myf(rowNum)
{
   // kod
}
A fuggvenyt ket esetben fogom meghivni:

1. Az elso esetben szeretnek egy egesz szamot kuldeni a "rowNum" valtozo segitsegevel.
myf(4);
2. A masodik esetben a fugvenynek szeretnek atadni tobb egesz szamot, peldaul igy:
myf(1,2,3,4);
Kesobb a tobb erteku sort felbontom split()-el.

Azt szeretnem kerdezni, hogy mind a ket esetben a "rowNum" valtozo tomb kell legyen ? Akkor is ha egy erteket tarol? En valtozo kent szeretnem atadni mindig az ertekeket:
var rowNum = 1;
myf(rowNum);

vagy

var rowNum = 1,2,3,4;
myf(rowNum);
Velemenyetek szerint, hogy kene csinalni a fugvenyt?

Koszonom!
 

Utólag létrehozott getter nem adja ki a privát változót

zzrek · 2008. Jún. 14. (Szo), 02.15
Sziasztok!
Érdekes jelenségre bukkantam, és szeretnék belőle tanulni (de sajnos megakadtam).
Kezdjük a kóddal, ami egyszerű:

<html>
 <head>
  <title>teszt</title>
  
<script type="text/javascript">

kk=new function()
{
  this.alma=55;
  var korte="körte";
  this.get=function(a)
  {
   return eval(a);
  }
}

alert(kk.get("this.alma")); //55
alert(kk.get("korte")); //körte

kk.get2=function(a)
  {
   return eval(a);
  }
  
alert(kk.get2("this.alma")); //55
alert(kk.get2("korte")); //hiba!!! nincs definiálva!?

</script>
  
 </head>
 <body>

</body>
</html>

Vagyis: a get2 esetében látszólag helyes a futási környezet, mert a "this" működik. Viszont a privát változót nem éri el. Ez miért van így? Meg lehetne valahogy csinálni, hogy az utólag létrehozott függvény olvassa a privát változót is? (Ezek szerint különbözik a "this" érvényessége és a scope működése? Ez miért jó?)
(Próbáltam mindenhogy, sehogyan sem ment...)
Köszi!