Skip to content

Repository files navigation

set Licensenpm

Build StatusnodeTest Coverage

One of the smallest (31 sloc) and most effective implementations of setting a nested value on an object.

Usage

$ npm install @strikeentco/set --save
constset=require('@strikeentco/set');set({a: {b: 'c'}},'a.b','d');//=> { a: { b: 'd' }}set({a: {b: ['c','d']}},'a.b.1','e');//=> { a: { b: ['c', 'e'] }}set({a: {b: ['c','d']}},['a','b'],'c');//=> { a: { b: 'c' }}set({a: {b: 'c'}},'a.b.c.d','e');//=> { a: { b: { c: { d: 'e' }}}}set({a: {b: 'c'}},'a:b','d',':');//=> { a: { b: 'd' }}

API

set(obj, path, val, [separator])

Params:

  • obj (Object) - Source object.
  • path (String|Array) - String or array with path.
  • val (Any) - Value to set.
  • [separator] (String) - . by default.

License

The MIT License (MIT)
Copyright (c) 2018-present Alexey Bystrov

About

Set nested values on an object using a dot path or custom separator

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages