-
-
Notifications
You must be signed in to change notification settings - Fork 804
/
Copy pathrepl.txt
86 lines (65 loc) · 1.96 KB
/
repl.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
{{alias}}( obj, path, value[, options] )
Sets a nested property value.
Parameters
----------
obj: ObjectLike
Input object.
path: string|Array
Key path.
value: any
Value to set.
options: Object (optional)
Options.
options.create: boolean (optional)
Boolean indicating whether to create a path if the key path does not
already exist. Default: false.
options.sep: string (optional)
Key path separator. Default: '.'.
Returns
-------
bool: boolean
Boolean indicating if the property was successfully set.
Examples
--------
> var obj = { 'a': { 'b': { 'c': 'd' } } };
> var bool = {{alias}}( obj, 'a.b.c', 'beep' )
true
// Specify an alternative separator via the sep option:
> obj = { 'a': { 'b': { 'c': 'd' } } };
> bool = {{alias}}( obj, 'a/b/c', 'beep', { 'sep': '/' } );
> obj
{ 'a': { 'b': { 'c': 'beep' } } }
// To create a key path which does not exist, set the create option to true:
> bool = {{alias}}( obj, 'a.e.c', 'boop', { 'create': true } );
> obj
{ 'a': { 'b': { 'c': 'beep' }, 'e': { 'c': 'boop' } } }
{{alias}}.factory( path[, options] )
Creates a reusable deep set function.
Parameters
----------
path: string|Array
Key path.
options: Object (optional)
Options.
options.create: boolean (optional)
Boolean indicating whether to create a path if the key path does not
already exist. Default: false.
options.sep: string (optional)
Key path separator. Default: '.'.
Returns
-------
out: Function
Deep get function.
Examples
--------
> var dset = {{alias}}.factory( 'a/b/c', {
... 'create': true,
... 'sep': '/'
... });
> var obj = { 'a': { 'b': { 'c': 'd' } } };
> var bool = dset( obj, 'beep' )
true
> obj
{ 'a': { 'b': { 'c': 'beep' } } }
See Also
--------