Js.Obj
Provide utilities for Js.t
Provides functions for inspecting and maniplating native JavaScript objects
assign target source
copies properties from source
to target
Properties in target
will be overwritten by properties in source
if they have the same key.
Returns target
(* Copy an object *)
let obj = [%obj { a = 1 }]
let copy = Js.Obj.assign (Js.Obj.empty ()) obj
(* prints "{ a: 1 }" *)
let _ = Js.log copy
(* Merge objects with same properties *)
let target = [%obj { a = 1; b = 1; }]
let source = [%obj { b = 2; }]
let obj = Js.Obj.assign target source
(* prints "{ a: 1, b: 2 }" *)
let _ = Js.log obj
(* prints "{ a: 1, b: 2 }", target is modified *)
let _ = Js.log target
keys obj
returns an array of the keys of obj
's own enumerable properties