orb-object
v1.0.0
Published
Concise Programming
Downloads
3
Maintainers
Readme
orb-object
We expose concise APIs for object manipulation.
Installation
Browser Installation. The module is exported as orbo global variable.
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/index.js"></script>
Node Installation
npm install orb-object
Details
orb-object types:
- object: A JS object which is not an array or a null.
- array: An Array.
- primitive: JS types: bigint, boolean, number or string.
- undefined: undefined.
- null: null
- unknown: Anything else like function or symbol etc.
APIs
copy
It performs a shallow copy of the input.
const o = {name: "copy", desc: "Shallow copies an object"}
const copied = copy(o) // A new container object is created to house the contents of o.
// Output: {name: "copy", desc: "Shallow copies an object"}
type
It classifies the input as one of the orb-object types.
const t = type(5)
// Output: primitive
const t = type('orb-array')
// Output: primitive
const t = type(['orb-array'])
// Output: array
const t = type({name: 'orb-array'})
// Output: object
is
is contains methods to perform type tests.
const istype = is.array([])
// Output: true
const istype = is.array({})
// Output: false
const istype = is.primitive('orb-array')
// Output: true
trim
trim trims a complex object based on the depth argument. It is perfect for situations that require a complex object to be logged. The default depth is 3.
const o = {name: 'orb-array', address: {house: 25, street: "ABC Street"}}
const r = trim(o, 1)
// Output: {name: 'orb-array', address: '.'}
const o = {name: 'orb-array', address: {house: 25, street: "ABC Street"}}
const r = trim(o)
// Output: {name: 'orb-array', address: {house: 25, street: "ABC Street"}}
gobject
gobject is short for good object. It transform an object as follows:
- When the input is an array or an object, it is returned as-is.
- When the input is a primitive, it is placed in an array.
- When the input is null, undefined or unknown, an empty array is returned.
const o = ['orb-object', 1]
const goed = gobject(o)
// Output: ['orb-object', 1]
const o = 'orb-object'
const goed = gobject(o)
// Output: ['orb-object']
const o = null
const goed = gobject(o)
// Output: []