dottie
Advanced tools
Comparing version 0.2.3 to 0.2.4
@@ -92,6 +92,3 @@ (function(undefined) { | ||
// Transform unnested object with .-seperated keys into a nested object. | ||
Dottie.transform = function(object, options) { | ||
options = options || {}; | ||
options.delimiter = options.delimiter || '.'; | ||
Dottie.transform = function Dottie$transformfunction(object, options) { | ||
if (Array.isArray(object)) { | ||
@@ -103,2 +100,5 @@ return object.map(function(o) { | ||
options = options || {}; | ||
options.delimiter = options.delimiter || '.'; | ||
var pieces, | ||
@@ -108,5 +108,11 @@ piecesLength, | ||
current, | ||
transformed = {}; | ||
transformed = {}, | ||
key, | ||
keys = Object.keys(object), | ||
length = keys.length, | ||
i; | ||
for (var key in object) { | ||
for (i = 0; i < length; i++) { | ||
key = keys[i]; | ||
if (key.indexOf(options.delimiter) !== -1) { | ||
@@ -113,0 +119,0 @@ pieces = key.split(options.delimiter); |
{ | ||
"name": "dottie", | ||
"version": "0.2.3", | ||
"version": "0.2.4", | ||
"devDependencies": { | ||
@@ -5,0 +5,0 @@ "expect.js": "~0.2.0", |
@@ -13,12 +13,14 @@ [![Build Status](https://travis-ci.org/mickhansen/dottie.js.png)](https://travis-ci.org/mickhansen/dottie.js.png) | ||
var values = { | ||
some: { | ||
nested: { | ||
key: 'foobar'; | ||
} | ||
} | ||
```js | ||
var values = { | ||
some: { | ||
nested: { | ||
key: 'foobar'; | ||
} | ||
} | ||
} | ||
dottie.get(values, 'some.nested.key'); // returns 'foobar' | ||
dottie.get(values, 'some.undefined.key'); // returns undefined | ||
dottie.get(values, 'some.nested.key'); // returns 'foobar' | ||
dottie.get(values, 'some.undefined.key'); // returns undefined | ||
``` | ||
@@ -28,3 +30,5 @@ ### Set value | ||
dottie.set(values, 'some.nested.value', someValue); | ||
```js | ||
dottie.set(values, 'some.nested.value', someValue); | ||
``` | ||
@@ -34,38 +38,46 @@ ### Transform object | ||
var values = { | ||
'user.name': 'Mick Hansen', | ||
'user.email': 'mh@innofluence.com', | ||
'user.professional.title': 'Developer', | ||
'user.professional.employer': 'Innofluence' | ||
}; | ||
var transformed = dottie.transform(values); | ||
```js | ||
var values = { | ||
'user.name': 'Mick Hansen', | ||
'user.email': 'maker@mhansen.io', | ||
'user.professional.title': 'Developer', | ||
'user.professional.employer': 'Coshopr' | ||
}; | ||
var transformed = dottie.transform(values); | ||
// transforms is now equal to = | ||
{ | ||
user: { | ||
name: 'Mick Hansen', | ||
email: 'mh@innofluence.com', | ||
professional: { | ||
title: 'Developer', | ||
employer: 'Innofluence' | ||
} | ||
} | ||
/* | ||
{ | ||
user: { | ||
name: 'Mick Hansen', | ||
email: 'maker@mhansen.io', | ||
professional: { | ||
title: 'Developer', | ||
employer: 'Coshopr' | ||
} | ||
} | ||
} | ||
*/ | ||
``` | ||
#### With a custom delimiter | ||
var values = { | ||
'user_name': 'Mick Hansen', | ||
'user_email': 'mh@innofluence.com' | ||
}; | ||
var transformed = dottie.transform(values, { delimiter: '_' }); | ||
```js | ||
var values = { | ||
'user_name': 'Mick Hansen', | ||
'user_email': 'maker@mhansen.io' | ||
}; | ||
var transformed = dottie.transform(values, { delimiter: '_' }); | ||
// transforms is now equal to = | ||
/* | ||
{ | ||
user: { | ||
name: 'Mick Hansen', | ||
email: 'maker@mhansen.io' | ||
} | ||
} | ||
*/ | ||
``` | ||
{ | ||
user: { | ||
name: 'Mick Hansen', | ||
email: 'mh@innofluence.com' | ||
} | ||
} | ||
## License | ||
[MIT](https://github.com/mickhansen/dottie.js/blob/master/LICENSE) |
SPDX disjunction
LicenseSPDX disjunction for an artifact's license information
Found 1 instance in 1 package
SPDX disjunction
LicenseSPDX disjunction for an artifact's license information
Found 1 instance in 1 package
No License Found
License(Experimental) License information could not be found
Found 1 instance in 1 package
15471
12
1
388
81