This is the latest docs version
Quick Links
  • -Overview
  • -Language Features
  • -JS Interop
  • -Build System
Documentation
Language Manual
Reference for all language features
ReScript & React
First class bindings for ReactJS
GenType
Seamless TypeScript integration
Reanalyze
Dead Code & Termination analysis
Exploration
Packages
Explore third party libraries and bindings
Syntax Lookup
Discover all syntax constructs
APIPlaygroundBlogCommunity
  • Playground
  • Blog
  • X
  • Bluesky
  • GitHub
  • Forum
Js Module
Overview
Js
submodules
  • Array
  • Array2
  • BigInt
  • Blob
  • Console
  • Date
  • Dict
  • Exn
  • File
  • Float
  • Global
  • Int
  • Json
    • Kind
  • List
  • Map
  • Math
  • Null
  • Null_undefined
  • Nullable
  • Obj
    • v
      empty
    • v
      assign
    • v
      keys
  • Option
  • Promise
  • Promise2
  • Re
  • Result
  • Set
  • String
  • String2
  • TypedArray2
    • DataView
    • Float64Array
    • Float32Array
    • Uint32Array
    • Int32Array
    • Uint16Array
    • Int16Array
    • Uint8ClampedArray
    • Uint8Array
    • Int8Array
    • ArrayBuffer
    Typed_array
    • DataView
    • Float64_array
    • Float64Array
    • Float32_array
    • Float32Array
    • Uint32Array
    • Int32_array
    • Int32Array
    • Uint16Array
    • Int16Array
    • Uint8ClampedArray
    • Uint8Array
    • Int8Array
    • S
    • ArrayBuffer
    • Type
  • Types
  • Undefined
  • Vector
  • WeakMap
  • WeakSet
  • API / Js / Obj

    Obj

    Provides functions for inspecting and manipulating native JavaScript objects

    empty

    RESCRIPT
    let empty: unit => {..}

    empty() returns the empty object {}

    assign

    RESCRIPT
    let assign: ({..}, {..}) => {..}

    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.

    See MDN

    Examples

    RESCRIPT
    /* Copy an object */ let obj = {"a": 1} let copy = Js.Obj.assign(Js.Obj.empty(), obj) /* prints "{ a: 1 }" */ Js.log(copy) /* Merge objects with same properties */ let target = {"a": 1, "b": 1} let source = {"b": 2} let obj = Js.Obj.assign(target, source) /* prints "{ a: 1, b: 2 }" */ Js.log(obj) /* prints "{ a: 1, b: 2 }", target is modified */ Js.log(target)

    keys

    RESCRIPT
    let keys: {..} => array<string>

    keys(obj) returns an array of the keys of obj's own enumerable properties.

    Types and values
    • v
      empty
    • v
      assign
    • v
      keys

    © 2024 The ReScript Project

    Software and assets distribution powered by KeyCDN.

    About
    • Community
    • ReScript Association
    Find us on