Enumerations in Pas2JS

Top 

Example code : Enumerations in Pas2JS ex1

type

   TDay = (Mon=1, Tue, Wed, Thu, Fri, Sat, Sun); // Defines enumeration range

 

procedure TForm1.W3Button12Click(Sender: TObject);

 var

   today : TDay;  // Defines enumeration variable

   weekend : Boolean;

 begin

   today := Wed;          // Set today to be Wednesday

 

   if today > Fri         // Ask if it is a weekend day

     then weekend := true

   else weekend := false;

 

   WriteLn('If today is Wed then weekend is: '+ weekend.ToString);

 

   for today := Mon to Fri do

   begin

     // day has each of the values Mon to Fri ( 1 to 5) in 5 iterations

     // of this loop, allowing you to whatever you want.

     WriteLn ( ord(today) );

   end;

If today is Wed then weekend is: False 

5 iterations

 

 

JS output:

   var today = 0;

   var weekend = false;

   today = 3;

   if (today>5) {

    weekend = true;

   } else {

    weekend = false;

   }

   WriteLn(("If today is Wed then weekend is: "+BoolToStr(weekend)));

   for(today = 5;today<=5;today++) {

    WriteLn(today);

   }

 

var TDay = { 1:"Mon"2:"Tue"3:"Wed"4:"Thu"5:"Fri"6:"Sat"7:"Sun" };

 

We can not have a subrange of an enumeration in Pas2JS, although a reduced range of values 

can be accessed through loop for instance.