forked from rescript-lang/rescript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJs.Global.html
186 lines (152 loc) · 8.59 KB
/
Js.Global.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
<!doctype html>
<html>
<head>
<link rel="stylesheet" href="../api_static/tomorrow-night.css">
<link rel="stylesheet" href="../api_static/style.css" type="text/css">
<script src="../api_static//highlight.pack.js"></script>
<script src="../api_static//script.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<meta charset="utf8">
<link rel="previous" href="Js.Dict.html"><link rel="next" href="Js.Json.html">
<title> Js.Global </title></head>
<body>
<nav class="module-index"><ul><li><a href="Bs.html">Bs</a></li>
<li><a href="Bs_dyn.html">Bs_dyn</a></li>
<li><a href="Bs_dyn_lib.html">Bs_dyn_lib</a></li>
<li><a href="Dom.html">Dom</a></li>
<li><a href="Dom_storage.html">Dom_storage</a></li>
<li><a href="Js.html">Js</a></li>
<li><a href="Js_array.html">Js_array</a></li>
<li><a href="Js_boolean.html">Js_boolean</a></li>
<li><a href="Js_cast.html">Js_cast</a></li>
<li><a href="Js_date.html">Js_date</a></li>
<li><a href="Js_dict.html">Js_dict</a></li>
<li><a href="Js_exn.html">Js_exn</a></li>
<li><a href="Js_float.html">Js_float</a></li>
<li><a href="Js_global.html">Js_global</a></li>
<li><a href="Js_int.html">Js_int</a></li>
<li><a href="Js_int64.html">Js_int64</a></li>
<li><a href="Js_internal.html">Js_internal</a></li>
<li><a href="Js_json.html">Js_json</a></li>
<li><a href="Js_list.html">Js_list</a></li>
<li><a href="Js_math.html">Js_math</a></li>
<li><a href="Js_nativeint.html">Js_nativeint</a></li>
<li><a href="Js_null.html">Js_null</a></li>
<li><a href="Js_null_undefined.html">Js_null_undefined</a></li>
<li><a href="Js_obj.html">Js_obj</a></li>
<li><a href="Js_option.html">Js_option</a></li>
<li><a href="Js_primitive.html">Js_primitive</a></li>
<li><a href="Js_promise.html">Js_promise</a></li>
<li><a href="Js_re.html">Js_re</a></li>
<li><a href="Js_result.html">Js_result</a></li>
<li><a href="Js_string.html">Js_string</a></li>
<li><a href="Js_typed_array.html">Js_typed_array</a></li>
<li><a href="Js_types.html">Js_types</a></li>
<li><a href="Js_undefined.html">Js_undefined</a></li>
<li><a href="Js_unsafe.html">Js_unsafe</a></li>
<li><a href="Js_vector.html">Js_vector</a></li>
<li><a href="Node.html">Node</a></li>
<li><a href="Node_buffer.html">Node_buffer</a></li>
<li><a href="Node_child_process.html">Node_child_process</a></li>
<li><a href="Node_fs.html">Node_fs</a></li>
<li><a href="Node_module.html">Node_module</a></li>
<li><a href="Node_path.html">Node_path</a></li>
<li><a href="Node_process.html">Node_process</a></li></ul></nav>
<div class="navbar"><a class="pre" href="Js.Dict.html" title="Js.Dict">Previous</a>
<a class="up" href="Js.html" title="Js">Up</a>
<a class="post" href="Js.Json.html" title="Js.Json">Next</a>
</div>
<h1>Module <a href="type_Js.Global.html">Js.Global</a></h1>
<pre><span class="keyword">module</span> Global: <code class="type"><a href="Js_global.html">Js_global</a></code></pre><div class="info module top">
<div class="not-examples">
Provide bindings to JS global functions in global namespace<br>
</div>
</div>
<hr width="100%">
<div class="type-declaration">
<pre><span id="TYPEintervalId"><span class="keyword">type</span> <code class="type"></code>intervalId</span> </pre>
</div>
<div class="info ">
<div class="not-examples">
identifies an interval started by <a href="Js_global.html#VALsetInterval"><code class="code">Js_global.setInterval</code></a><br>
</div>
</div>
<div class="type-declaration">
<pre><span id="TYPEtimeoutId"><span class="keyword">type</span> <code class="type"></code>timeoutId</span> </pre>
</div>
<div class="info ">
<div class="not-examples">
identifies a timeout started by <a href="Js_global.html#VALsetTimeout"><code class="code">Js_global.setTimeout</code></a><br>
</div>
</div>
<pre><span id="VALclearInterval"><span class="keyword">val</span> clearInterval</span> : <code class="type"><a href="Js_global.html#TYPEintervalId">intervalId</a> -> unit</code></pre><div class="info ">
<div class="not-examples">
clears an interval started by <a href="Js_global.html#VALsetInterval"><code class="code">Js_global.setInterval</code></a><br>
<div class="tag"> <b>See also</b> <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/clearInterval">MDN</a><br>
</div>
</div>
<div class="examples">
<pre class="example"> <pre class="codepre"><code class="code">(* API for a somewhat aggressive snoozing alarm clock *)
let interval = Js.Undefined.empty
let remind () =
Js.log "Wake Up!";
IO.punchSleepyGuy ()
let snooze mins =
interval := Js.Undefined.return @@ Js.Global.setInterval remind (mins * 60 * 1000)
let cancel () =
Js.Undefined.iter Js.Global.clearInterval !interval
</code></pre> </pre>
</div>
</div>
<pre><span id="VALclearTimeout"><span class="keyword">val</span> clearTimeout</span> : <code class="type"><a href="Js_global.html#TYPEtimeoutId">timeoutId</a> -> unit</code></pre><div class="info ">
<div class="not-examples">
clears a timeout started by <a href="Js_global.html#VALsetTimeout"><code class="code">Js_global.setTimeout</code></a><br>
<div class="tag"> <b>See also</b> <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/clearTimeout">MDN</a><br>
</div>
</div>
<div class="examples">
<pre class="example"> <pre class="codepre"><code class="code">(* A simple model of a code monkey's brain *)
let timer = Js.Undefined.empty
let work () =
IO.closeHackerNewsTab ()
let procrastinate mins =
Js.Undefined.iter fun Js.Global.clearTimeout !timer
Js.Global.setTimeout work (mins * 60 * 1000)
</code></pre> </pre>
</div>
</div>
<pre><span id="VALsetInterval"><span class="keyword">val</span> setInterval</span> : <code class="type">(unit -> unit) -> int -> <a href="Js_global.html#TYPEintervalId">intervalId</a></code></pre><div class="info ">
<div class="not-examples">
<i>repeatedly</i> executes a callback with a specified interval (in milliseconds) between calls
<p>
<b>returns</b> an <a href="Js_global.html#TYPEintervalId"><code class="code">Js_global.intervalId</code></a> that can be passed to <a href="Js_global.html#VALclearInterval"><code class="code">Js_global.clearInterval</code></a> to cancel the timeout<br>
<div class="tag"> <b>See also</b> <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval">MDN</a><br>
</div>
</div>
<div class="examples">
<pre class="example"> <pre class="codepre"><code class="code">(* Will count up and print the count to the console every second *)
let count = ref 0
let tick () =
count := !count + 1; Js.log (string_of_int !count)
let _ =
Js.Global.setInterval tick 1000
</code></pre> </pre>
</div>
</div>
<pre><span id="VALsetTimeout"><span class="keyword">val</span> setTimeout</span> : <code class="type">(unit -> unit) -> int -> <a href="Js_global.html#TYPEtimeoutId">timeoutId</a></code></pre><div class="info ">
<div class="not-examples">
executes a callback after a specified delay (in milliseconds)
<p>
<b>returns</b> a <a href="Js_global.html#TYPEtimeoutId"><code class="code">Js_global.timeoutId</code></a> that can be passed to <a href="Js_global.html#VALclearTimeout"><code class="code">Js_global.clearTimeout</code></a> to cancel the timeout<br>
<div class="tag"> <b>See also</b> <a href="https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">MDN</a><br>
</div>
</div>
<div class="examples">
<pre class="example"> <pre class="codepre"><code class="code">(* Prints "Timed out!" in the console after one second *)
let message = "Timed out!"
let _ =
Js.Global.setTimeout (fun () -> Js.log message) 1000
</code></pre> </pre>
</div>
</div>
</body></html>