AS: Hur gå igenom repeatloop baklänges?

Tråden skapades och har fått 4 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • 2009-05-19 11:42

Jag har en kodsnutt som jag vill köra "baklänges". Hur gör man det?

set myPages to pages
repeat with I from 1 to (count myPages) 
	-- Här vill jag att item I först ska vara den sista posten i myPages:
	set myPage to item I of myPages
	-- kod
end repeat
  • Medlem
  • 2009-05-19 11:48
set myPages to pages
set myPagesCount to count myPages
repeat with I from 1 to (count myPages) 
	set myPage to item myPagesCount of myPages
	-- kod
	set myPagesCount to myPagesCount - 1
end repeat
  • Medlem
  • 2009-05-19 11:57

...eller använd "by -1" i slutet av repeat-satsen.

set myPages to pages
repeat with I from (count myPages) to 1 by -1
	-- Här vill jag att item I först ska vara den sista posten i myPages:
	set myPage to item I of myPages
	-- kod
end repeat
  • Medlem
  • 2009-05-19 12:30
Ursprungligen av wlao:

...eller använd "by -1" i slutet av repeat-satsen.

set myPages to pages
repeat with I from (count myPages) to 1 by -1
	-- Här vill jag att item I först ska vara den sista posten i myPages:
	set myPage to item I of myPages
	-- kod
end repeat

Finemang! Det var nåt sånt jag letade efter!

  • Medlem
  • 2009-05-19 16:52

AppleScript Language Guide brukar vara ett bra ställe att titta i när AS har synpunkter på min syntax...

1
Bevaka tråden