Verwenden von JScript oder JavaScript zum Durchlaufen einer Sammlung

In diesem Artikel wird gezeigt, wie Sie JScript oder JavaScript verwenden, um eine Sammlung zu durchlaufen.

Ursprüngliche Produktversion:   Visual Studio
Ursprüngliche KB-Nummer:   229693

Zusammenfassung

In diesem Artikel wird beschrieben, wie Sie serverseitige Skripts auf ASP-Seiten (Active Server Pages) mit Visual Basic Script (VBScript) und JScript oder JavaScript verwenden, um eine Sammlung zu durchlaufen. In VBScript können Sie die FOR EACH...NEXT Schleife verwenden, um eine Auflistung zu durchlaufen. In JScript oder JavaScript müssen Sie ein Enumeratorobjekt verwenden.

Weitere Informationen

In den Beispielen in diesem Artikel wird das Dateisystemobjekt verwendet, um einen Ordner (in diesem Fall) zu durchlaufen und alle Dateien auflisten, C:\Textdie sich im Ordner befinden. Im ersten Beispiel wird eine FOR EACH...NEXT Schleife in VBScript verwendet, um Folgendes zu durchlaufen:

  1. Erstellen Sie einen neuen Ordner im Stammordner von Laufwerk C, und nennen Sie ihn Text.
  2. Platzieren Sie fünf Textdateien in dem verzeichnis, das Sie erstellt haben.
  3. Erstellen Sie eine neue ASP-Seite, und fügen Sie den folgenden VBScript-Code hinzu:
<% @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

%>

Das folgende Beispiel veranschaulicht die Entsprechung, verwendet aber JScript oder JavaScript und das Enumeratorobjekt wie unten dargestellt. Führen Sie die zuvor beschriebenen Schritte aus, mit Ausnahme des folgenden Codes in Schritt 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;
%>

Hinweis

Das Enumeratorobjekt wird innerhalb der FOR-Schleife instanziiert, was in JScript oder JavaScript in Ordnung ist. Die Syntax für die FOR-Anweisung lautet wie folgt:

FOR(initialize; test; inkrementieren) Aussage;

Die Ausgabe für jedes Beispiel in diesem Artikel wird anders angezeigt. In VBScript zeigt die Ausgabe nur den Dateinamen und dessen Dateierweiterung an, wie hier gezeigt:

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

In JScript oder JavaScript zeigt die Ausgabe den physischen Ordner, den Dateinamen und dessen Dateierweiterung an:

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

Die in diesem Artikel genannten Fremdanbieterprodukte stammen von Herstellern, die von Microsoft unabhängig sind. Microsoft gewährt keine implizite oder sonstige Garantie in Bezug auf die Leistung oder Zuverlässigkeit dieser Produkte.

References

Weitere Informationen zu JScript und VBScript finden Sie unter Einführung in Windows Script Technologies.