Udostępnij za pośrednictwem


Przechodzenie przez kolekcję za pomocą języka JScript lub JavaScript

W tym artykule pokazano, jak używać języka JScript lub JavaScript do przechodzenia przez kolekcję.

Oryginalna wersja produktu: Visual Studio
Oryginalny numer KB: 229693

Podsumowanie

W tym artykule opisano sposób używania skryptów po stronie serwera na stronach Active Server Pages (ASP) przy użyciu skryptów Języka Visual Basic (VBScript) i JScript lub JavaScript w celu przechodzenia przez kolekcję. W języku VBScript możesz użyć FOR EACH...NEXT pętli do przechodzenia przez kolekcję. W JScript lub JavaScript należy użyć obiektu modułu wyliczającego.

Więcej informacji

Przykłady w tym artykule używają obiektu systemu plików, aby przejść przez folder (w tym przypadku C:\Text) i wyświetlić listę wszystkich plików znajdujących się w folderze. Pierwszy przykład używa pętli w języku VBScript do przechodzenia FOR EACH...NEXT :

  1. Utwórz nowy folder w folderze głównym dysku C i nadaj mu nazwę Text.
  2. Umieść pięć plików tekstowych w utworzonym katalogu.
  3. Utwórz nową stronę ASP i dodaj następujący kod VBScript:
<% @LANGUAGE="VBScript" %>
<%
'Reference the FileSystemObject
set FSO = Server.CreateObject("Scripting.FileSystemObject")'Reference the Text directory
set Folder = FSO.GetFolder("C:\Text")'Reference the File collection of the Text directory
set FileCollection = Folder.Files

Response.Write("VBScript Method<BR>")'Display the number of files within the Text directory
Response.Write("Number of files found: " & FileCollection.Count & "<BR>")'Traverse through the FileCollection using the FOR EACH...NEXT loop
For Each FileName in FileCollection

strFileName = FileName.Name
Response.Write(strFileName & "<BR>")

Next

'De-reference all the objects
set FileCollection = Nothing
set Folder = Nothing
set FSO = Nothing

%>

W poniższym przykładzie pokazano odpowiednik, ale używa języka JScript lub JavaScript oraz obiektu modułu wyliczającego, jak pokazano poniżej. Wykonaj kroki opisane wcześniej, z wyjątkiem użycia następującego kodu w kroku 3.

<% @LANGUAGE="JScript" %>
<%
// Reference the FileSystemObject
var FSO = Server.CreateObject("Scripting.FileSystemObject");

// Reference the Text directory
var Folder = FSO.GetFolder("c:\\Text");

// Reference the File collection of the Text directory
 var FileCollection = Folder.Files;

Response.Write("JScript Method<BR>");

// Display the number of files within the Text directory
Response.Write("Number of files found: " + FileCollection.Count + "<BR>");

// Traverse through the FileCollection using the FOR loop
for(var objEnum = new Enumerator(FileCollection); !objEnum.atEnd(); objEnum.moveNext()) {
 strFileName = objEnum.item();
 Response.Write(strFileName + "<BR>");
}

// Destroy and de-reference enumerator object
delete objEnum;
objEnum = null;

// De-reference FileCollection and Folder object
FileCollection = null;
Folder = null;

// Destroy and de-reference FileSystemObject
delete FSO;
FSO = null;
%>

Uwaga 16.

Obiekt modułu wyliczającego jest tworzone w pętli FOR, która jest w porządku w kodzie JScript lub JavaScript. Składnia instrukcji FOR jest następująca:

FOR(inicjowanie; test; increment) instrukcja;

Dane wyjściowe dla każdego przykładu w tym artykule będą wyświetlane inaczej. W języku VBScript dane wyjściowe zawierają tylko nazwę pliku i jego rozszerzenie pliku, jak pokazano poniżej:

VBScript Method
Number of files found: 5
test1.txt
test2.txt
test3.txt
test4.txt
test5.txt

W JScript lub JavaScript dane wyjściowe wyświetlają folder fizyczny, nazwę pliku i jego rozszerzenie:

JScript Method
Number of files found: 5
C:\Text\test1.txt
C:\Text\test2.txt
C:\Text\test3.txt
C:\Text\test4.txt
C:\Text\test5.txt

Produkty innych firm omówione w tym artykule są wytwarzane przez producentów niezależnych od firmy Microsoft. Firma Microsoft nie daje żadnych gwarancji, dorozumianych ani żadnego innego rodzaju, dotyczących wydajności lub niezawodności tych produktów.

Informacje

Aby uzyskać więcej informacji na temat języków JScript i VBScript, zobacz Wprowadzenie do technologii skryptów systemu Windows.