Js
This library provides bindings and necessary support for JS FFI. It contains all bindings into Js
namespace.
[| 1;2;3;4|]
|. Js.Array2.map (fun x -> x + 1 )
|. Js.Array2.reduce (+) 0
|. Js.log
Types for JS objects
This used to be mark a Js object type. It is not needed any more, it is kept here for compatibility reasons
module Fn : sig ... end
nullable, value of this type can be either null
or 'a
this type is the same as type t
in Null
value of this type can be either undefined
or 'a
this type is the same as type t
in Undefined
value of this type can be undefined
, null
or 'a
this type is the same as type t
n Null_undefined
type +'a null_undefined = 'a nullable
val toOption : 'a nullable -> 'a option
val undefinedToOption : 'a undefined -> 'a option
val nullToOption : 'a null -> 'a option
val isNullable : 'a nullable -> bool
val undefined : 'a undefined
The same as empty
Js.Undefined
will be compiled as undefined
typeof x
will be compiled as typeof x
in JS Please consider functions in Types
for a type safe way of reflection
val eqNull : 'a -> 'a null -> bool
val eqUndefined : 'a -> 'a undefined -> bool
val eqNullable : 'a -> 'a nullable -> bool
unsafe_lt a b
will be compiled as a < b
. It is marked as unsafe, since it is impossible to give a proper semantics for comparision which applies to any type
unsafe_le a b
will be compiled as a <= b
. See also unsafe_lt
unsafe_gt a b
will be compiled as a > b
. See also unsafe_lt
unsafe_ge a b
will be compiled as a >= b
. See also unsafe_lt
module Null = Js_null
Provide utilities around 'a null
module Undefined = Js_undefined
Provide utilities around undefined
module Nullable = Js_null_undefined
Provide utilities around null_undefined
module Null_undefined = Js_null_undefined
module Exn = Js_exn
Provide utilities for dealing with Js exceptions
module Array = Js_array
Provide bindings to Js array
module Array2 = Js_array2
Provide bindings to Js array
module String = Js_string
Provide bindings to JS string
module String2 = Js_string2
Provide bindings to JS string
module Re = Js_re
Provide bindings to Js regex expression
module Promise = Js_promise
Provide bindings to JS promise
module Date = Js_date
Provide bindings for JS Date
module Dict = Js_dict
Provide utilities for JS dictionary object
module Global = Js_global
Provide bindings to JS global functions in global namespace
module Json = Js_json
Provide utilities for json
module Math = Js_math
Provide bindings for JS Math
object
module Typed_array = Js_typed_array
Provide bindings for JS typed array
module TypedArray2 = Js_typed_array2
Provide bindings for JS typed array
module Types = Js_types
Provide utilities for manipulating JS types
module Float = Js_float
Provide utilities for JS float
module Int = Js_int
Provide utilities for int
module Bigint = Js_bigint
Provide utilities for bigint
module Option = Js_option
Provide utilities for option
module Result = Js_result
Define the interface for result
module List = Js_list
Provide utilities for list
module Vector = Js_vector
module Console = Js_console
module Set = Js_set
Provides bindings for ES6 Set
module WeakSet = Js_weakset
Provides bindings for ES6 WeakSet
module Map = Js_map
Provides bindings for ES6 Map
module WeakMap = Js_weakmap
Provides bindings for ES6 WeakMap