File tree 2 files changed +95
-0
lines changed
2 files changed +95
-0
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ id : " for"
3
+ keywords : ["for", "loop"]
4
+ name : " for loop"
5
+ summary : " This is the `for` loop."
6
+ category : " languageconstructs"
7
+ ---
8
+
9
+ ReScript supports ` for ` loops.
10
+
11
+ For loops can iterate from a starting value up to (and including) the ending value via the ` to ` keyword, or in the opposite direction via the ` downto ` keyword.
12
+
13
+ ### Example
14
+
15
+ <CodeTab labels = { [" ReScript" , " JS Output" ]} >
16
+
17
+ ``` res
18
+ // Using `to`
19
+ for x in 1 to 3 {
20
+ Console.log(x)
21
+ }
22
+
23
+ // Using `downto`
24
+ for y in 3 downto 1 {
25
+ Console.log(y)
26
+ }
27
+ ```
28
+
29
+ ``` js
30
+ for (var x = 1 ; x <= 3 ; ++ x){
31
+ console .log (x);
32
+ }
33
+
34
+ for (var y = 3 ; y >= 1 ; -- y){
35
+ console .log (y);
36
+ }
37
+ ```
38
+
39
+ </CodeTab >
40
+
41
+
42
+ ### References
43
+
44
+ * [ For Loops] ( control-flow.md#for-loops )
45
+
Original file line number Diff line number Diff line change
1
+ ---
2
+ id : " while"
3
+ keywords : ["while", "loop"]
4
+ name : " while loop"
5
+ summary : " This is the `while` loop."
6
+ category : " languageconstructs"
7
+ ---
8
+
9
+ ReScript supports ` while ` loops. While loops execute its body code block while its condition is true.
10
+
11
+ ReScript does not have the ` break ` keyword, but you can easily break out of a while loop by using a mutable binding.
12
+
13
+ ### Example
14
+
15
+ <CodeTab labels = { [" ReScript" , " JS Output" ]} >
16
+
17
+ ``` res
18
+ let break = ref(false)
19
+
20
+ while !break.contents {
21
+ if Math.random() > 0.3 {
22
+ break := true
23
+ } else {
24
+ Console.log("Still running")
25
+ }
26
+ }
27
+
28
+ ```
29
+
30
+ ``` js
31
+ let $$break = {
32
+ contents: false
33
+ };
34
+
35
+ while (! $$break .contents ) {
36
+ if (Math .random () > 0.3 ) {
37
+ $$break .contents = true ;
38
+ } else {
39
+ console .log (" Still running" );
40
+ }
41
+ };
42
+ ```
43
+
44
+ </CodeTab >
45
+
46
+
47
+ ### References
48
+
49
+ * [ While Loops] ( control-flow.md#while-loops )
50
+
You can’t perform that action at this time.
0 commit comments