🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: dk.edb.internet.webdesign.serverside.asp
10 messages
10 total messages Started by Leif Neland Mon, 17 Oct 2011 10:18
funktion som parameter, vbscript
#223
Author: Leif Neland
Date: Mon, 17 Oct 2011 10:18
21 lines
1547 bytes
Kan man have en funktion som parameter til en funktion?

function ilterer arr,funk
dim n
for n=lBound(arr) to uBound(arr)
  funk arr(n)
next
end function

Det giver syntaxfejl...

Jeg ville bare kunne g�re noget mere elegant end
function ilterer_funktion1
function ilterer_funktion2
og istedet kunne
ilterer array1,funktion1
ilterer array2,funktion1
ilterer array1,funktion2
ilterer array2,funktion2

Leif
Re: funktion som parameter, vbscript
#224
Author: Stig Johansen
Date: Mon, 17 Oct 2011 11:05
11 lines
1495 bytes
Leif Neland wrote:

> Kan man have en funktion som parameter til en funktion?

Er det rekursiv funktionalitet du er ude efter ?

(Dit indl�g er meget uklart - for mig).

-- 
Med venlig hilsen
Stig Johansen
Re: funktion som parameter, vbscript
#225
Author: Leif Neland
Date: Mon, 17 Oct 2011 12:47
20 lines
1873 bytes
"Stig Johansen" <wopr.dk@gmail.com> skrev i en meddelelse 
news:4e9c0be9$0$288$14726298@news.sunsite.dk...
> Leif Neland wrote:
>
>> Kan man have en funktion som parameter til en funktion?
>
> Er det rekursiv funktionalitet du er ude efter ?
>
Jeg har et antal funktioner, som behandler et element.
Nu vil jeg gerne k�re de funktioner p� et array.
I stedet for at lave funktionerne om, eller lave en
"for n=lbound(arr) to ubound(arr) do funktion(arr(n))"
ville jeg lave en funktion, man giver et array og en funktion, hvert element 
skal behandles med.

Svarende til php's array_map
array_map("funktion1",$arr);

Leif
Re: funktion som parameter, vbscript
#226
Author: Leif Neland
Date: Mon, 17 Oct 2011 13:16
12 lines
1796 bytes
"Leif Neland" <leif@neland.dk> skrev i en meddelelse 
news:4e9c2400$0$290$14726298@news.sunsite.dk...

> I stedet for at lave funktionerne om, eller lave en
> "for n=lbound(arr) to ubound(arr) do funktion(arr(n))"

Jeg mener at jeg gerne ville undg� at skulle lave dette for hver gang en af 
mine funktioner skulle arbejde p� alle elementerne i et array.
S� er det mere overskueligt med php's array_map("funktion1",$arr)

Leif
Re: funktion som parameter, vbscript
#227
Author: Stig Johansen
Date: Tue, 18 Oct 2011 08:10
31 lines
2066 bytes
Leif Neland wrote:

>> I stedet for at lave funktionerne om, eller lave en
>> "for n=lbound(arr) to ubound(arr) do funktion(arr(n))"
> 
> Jeg mener at jeg gerne ville undg� at skulle lave dette for hver gang en
> af mine funktioner skulle arbejde p� alle elementerne i et array.
> S� er det mere overskueligt med php's array_map("funktion1",$arr)

Jeg er stadig ikke sikker p� om jeg forst�r dig ret.

Enhver funktion skal defineres uanset hvilket sprog man bruger.

Kan du ikke bare lave (lidt pseudo):
sub function1 arr
dim n
   for n=lbound(arr) to ubound(arr) do 
...
end sub

og s� bruge
   function1 (array1)
   function1 (array2)
   function2 (array1)
.....

Syntaxen er sikkert forkert, men meningen skulle v�re klar.

-- 
Med venlig hilsen
Stig Johansen
Re: funktion som parameter, vbscript
#228
Author: Rune Jensen
Date: Tue, 18 Oct 2011 14:30
11 lines
1838 bytes
On 17 Okt., 05:47, "Leif Neland" <l...@neland.dk> wrote:

> Svarende til php's array_map
> array_map("funktion1",$arr);

Kender ikke PHP overhovedet, men du vil have en funktion, som laver en
funktion(?), så måske du i virkeligheden skal have fat i en class.


MVH
Rune Jensen
Re: funktion som parameter, vbscript
#229
Author: Leif Neland
Date: Tue, 18 Oct 2011 17:29
53 lines
3032 bytes
Den 18-10-2011 10:10, Stig Johansen skrev:
> Leif Neland wrote:
>
>>> I stedet for at lave funktionerne om, eller lave en
>>> "for n=lbound(arr) to ubound(arr) do funktion(arr(n))"
>>
>> Jeg mener at jeg gerne ville undg� at skulle lave dette for hver gang en
>> af mine funktioner skulle arbejde p� alle elementerne i et array.
>> S� er det mere overskueligt med php's array_map("funktion1",$arr)
>
> Jeg er stadig ikke sikker p� om jeg forst�r dig ret.
>
> Enhver funktion skal defineres uanset hvilket sprog man bruger.
>
> Kan du ikke bare lave (lidt pseudo):
> sub function1 arr
> dim n
>     for n=lbound(arr) to ubound(arr) do
> ...
> end sub
>
> og s� bruge
>     function1 (array1)
>     function1 (array2)
>     function2 (array1)
> .....
>
> Syntaxen er sikkert forkert, men meningen skulle v�re klar.
>
Jo.

Jeg synes bare det er lettere at have en h�ndfuld funktioner, der 
arbejder p� et enkelt element, fremfor at lave den l�kke der iltererer 
over et array inden i hver funktion. Eller lave den hver gang, der skal 
iltereres over arrayet.

Derfor ville jeg have en ilterator-funktion, man gav et funktionsnavn og 
et array som parametre, hvorefter ilteratorfunktionen kaldte 
parameterfunktionen for hvert element i arrayet.

Jeg ved snart ikke hvordan jeg skal formulere det anderledes :-)

ilterer("sin",arr)
ilterer("cos",arr)
ilterer("funktion1",arr)

sub ilterer (funk,arr)
for n=lBound(arr) to uBound(arr)
   funk(arr(n))
next
end sub

Leif
Re: funktion som parameter, vbscript
#230
Author: Stig Johansen
Date: Wed, 19 Oct 2011 07:25
26 lines
2259 bytes
Leif Neland wrote:

> Jeg ved snart ikke hvordan jeg skal formulere det anderledes :-)

Jeg tror godt jeg forst�r hvad du vil, men m�ske ikke hvorfor ;-)

Vbscript indeholder (SVJV) ikke mulkigheder for kald med funktioner som
parametre, s� den mulighed er udelukket.

Jeg pr�ver at sp�rge ind til din _problemstilling_, eller
_programmeringsopl�g_ om du vil - og pr�ver at udlede en l�sning.

ASP kan jo ogs� k�re jScript, s� m�ske finder du en l�sning der?

Jeg ved ikke om du er ude i at 'kort kode'='god kode', men s�dan er det
ikke.

God kode = _l�sbar_ kode!!

Selve _kodningen_ er jo den aller mindste del af et projekt, s� der er ingen
besparelse ved at fors�ge at minimere den (og derved g�re den uforst�elig).


-- 
Med venlig hilsen
Stig Johansen
Re: funktion som parameter, vbscript
#231
Author: Leif Neland
Date: Wed, 19 Oct 2011 11:58
30 lines
2456 bytes
"Stig Johansen" <wopr.dk@gmail.com> skrev i en meddelelse 
news:4e9e7b6c$0$295$14726298@news.sunsite.dk...
>
> Jeg ved ikke om du er ude i at 'kort kode'='god kode', men s�dan er det
> ikke.
>
> God kode = _l�sbar_ kode!!
>
Det, der skal ske er:
<div class='clear'></div>
  G�r noget for alle elementer i array
<div class='clear'></div>
  G�r noget andet for alle elementer i array
<div class='clear'></div>
  G�r noget tredie for alle elementer i array
<div class='clear'></div>

Nu skal l�kken skrives tre gange, enten i de tre funktioner, eller udenom 
funktionskaldet.
Hvis man kunne bruge funktionsnavne som parametre, skulle l�kken kun laves 
en gang, hvilket ville v�re specielt interessant, hvis man f.ex. ville tage 
arrayet bagl�ns eller ville springe null eller andet over.

Men det kan man alts� ikke.

Hvis man har behov for en speciel r�kkef�lge, s� kunne man lave det med en 
switch/case inde i ilterator-funktionen, men det er jo ikke s� overskueligt.

Leif 
Re: funktion som parameter, vbscript
#233
Author: Stig Johansen
Date: Thu, 20 Oct 2011 07:02
27 lines
2037 bytes
Leif Neland wrote:

> Nu skal l�kken skrives tre gange, enten i de tre funktioner, eller udenom
> funktionskaldet.

Eller i en 'overordnet funktion'.
(pseudokode).
Sub iterfunc arr,whattodo
  for counter = lbound to ubound ...
eller
  for each x in y ...
( http://www.developerfusion.com/code/1601/iterate-arrays-with-for-each/ )
   case whattodo of
   1 : do function1
   2 : do function2
...
end sub

sub function1 element
do something with element
end sub

osv...

-- 
Med venlig hilsen
Stig Johansen
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads