Recursive coutility methods, convenience methods/properties.
npm install recourseUsed By
⁘ Core-Plex
❂ Objecture
⁜ MVC Framework
expandimpandcompanddecompandassignassignConcatdefinePropertiesdefineProperty Methodset delete freezesealget getOwnPropertyDescriptorsgetOwnPropertyDescriptor MethodisArrayLikeisMapLiketypeOfvalueOftoString
import { Recourse } from 'recourse'
`
Then With Some Object/Array/Map
`
const object = {
propertyA: [{
propertyB: {
propertyC: [3, 33, 333]
}
}, {
propertyD: {
propertyE: [5, 55, 555]
}
}, {
propertyF: {
propertyG: new Map([[0, 7], [1, 77], [2, 777]])
}
}]
}
`
get/set/delete Targeted Tensors/Mutators
`
Recourse.get(object, 'propertyA.0.propertyB.propertyC.0')
Recourse.set(object, 'propertyA.1.propertyD.propertyE.1', "55")
Recourse.delete(object, 'propertyA.2.propertyF.propertyG.2')
`
get/set/delete
`
propertyA.0.propertyB.propertyC.0 3
propertyA.1.propertyD.propertyE.1 "55"
propertyA.2.propertyF.propertyG.2 undefined
`
get/set/delete Bound Tensors/Mutators
`
const recourseObject = new Recourse(object)
recourseObject.get('propertyA.0.propertyB.propertyC.2')
recourseObject.set('propertyA.1.propertyD.propertyE.2', "555")
recourseObject.delete('propertyA.2.propertyF.propertyG.2')
`
get/set/delete
`
propertyA.0.propertyB.propertyC.2 333
propertyA.1.propertyD.propertyE.2 555
propertyA.2.propertyF.propertyG.2 undefined
``