إنتقل إلى المحتوى الرئيسي

🔑 Object Utilities

Module: object/* | Operators: 18

Access and manipulate object properties safely.


Operator Reference

object/keys

Keys · 1 argument · returns array

Get object keys as array

ParameterTypeDescription
objobjectThe object
["object/keys", {"a": 1, "b": 2}] // => ["a", "b"]

object/values

Values · 1 argument · returns array

Get object values as array

ParameterTypeDescription
objobjectThe object
["object/values", {"a": 1, "b": 2}] // => [1, 2]

object/entries

Entries · 1 argument · returns array

Get [key, value] pairs as array

ParameterTypeDescription
objobjectThe object
["object/entries", {"a": 1}] // => [["a", 1]]

object/fromEntries

From Entries · 1 argument · returns any

Create object from [key, value] pairs

ParameterTypeDescription
entriesarrayArray of [key, value] pairs
["object/fromEntries", [["a", 1], ["b", 2]]] // => {"a": 1, "b": 2}

object/get

Get · 2–3 arguments · returns any

Get nested value by path

ParameterTypeDescription
objobjectThe object
pathstringDot-separated path (e.g., "user.name")
defaultanyDefault if path not found
["object/get", "@user", "profile.name", "Anonymous"]

object/set

Set · 3 arguments · returns any

Set nested value by path (returns new object)

ParameterTypeDescription
objobjectThe object
pathstringDot-separated path
valueanyValue to set
["object/set", "@user", "profile.name", "John"]

object/has

Has · 2 arguments · returns boolean

Check if path exists

ParameterTypeDescription
objobjectThe object
pathstringDot-separated path
["object/has", "@user", "profile.name"]

object/merge

Merge · 2 or more · returns any

Shallow merge objects (later wins)

ParameterTypeDescription
...objsobject[]Objects to merge
["object/merge", {"a": 1}, {"b": 2}] // => {"a": 1, "b": 2}

object/deepMerge

Deep Merge · 2 or more · returns any

Deep merge objects (later wins)

ParameterTypeDescription
...objsobject[]Objects to merge
["object/deepMerge", {"a": {"b": 1}}, {"a": {"c": 2}}]

object/pick

Pick · 2 arguments · returns any

Select only specified keys

ParameterTypeDescription
objobjectThe object
keysarrayKeys to keep
["object/pick", "@entity", ["name", "email"]]

object/omit

Omit · 2 arguments · returns any

Exclude specified keys

ParameterTypeDescription
objobjectThe object
keysarrayKeys to exclude
["object/omit", "@entity", ["password", "secret"]]

object/mapValues

Map Values · 2 arguments · returns any

Transform all values

ParameterTypeDescription
objobjectThe object
fnlambdaTransform function
["object/mapValues", "@stats", ["fn", "v", ["*", "@v", 100]]]

object/mapKeys

Map Keys · 2 arguments · returns any

Transform all keys

ParameterTypeDescription
objobjectThe object
fnlambdaTransform function
["object/mapKeys", "@data", ["fn", "k", ["str/upper", "@k"]]]

object/filter

Filter · 2 arguments · returns any

Filter entries by predicate

ParameterTypeDescription
objobjectThe object
predlambdaPredicate (key, value) => boolean
["object/filter", "@data", ["fn", ["k", "v"], ["!=", "@v", null]]]

object/empty?

Empty? · 1 argument · returns boolean

Check if object has no keys

ParameterTypeDescription
objobjectThe object
["object/empty?", {}] // => true

object/equals

Equals · 2 arguments · returns boolean

Deep equality check

ParameterTypeDescription
aobjectFirst object
bobjectSecond object
["object/equals", {"a": 1}, {"a": 1}] // => true

object/clone

Clone · 1 argument · returns any

Shallow clone object

ParameterTypeDescription
objobjectThe object
["object/clone", "@entity"]

object/deepClone

Deep Clone · 1 argument · returns any

Deep clone object

ParameterTypeDescription
objobjectThe object
["object/deepClone", "@entity"]