2016-06-29 10:37:17 +00:00
|
|
|
var obj = {
|
|
|
|
|
'first_name': 'John',
|
|
|
|
|
'last_name': 'Doe'
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
dot.move('first_name', 'contact.firstname', obj);
|
|
|
|
|
dot.move('last_name', 'contact.lastname', obj);
|
|
|
|
|
|
|
|
|
|
var src = {
|
|
|
|
|
name: 'John',
|
|
|
|
|
stuff: {
|
|
|
|
|
phone: {
|
|
|
|
|
brand: 'iphone',
|
|
|
|
|
version: 6
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
2017-01-24 21:33:36 +00:00
|
|
|
var tgt = { name: 'Brandon' };
|
2016-06-29 10:37:17 +00:00
|
|
|
|
2016-06-30 08:55:56 +00:00
|
|
|
dot.copy('stuff.phone', 'wanna.haves.phone', src, tgt, [(arg: any) => {
|
2017-01-24 21:33:36 +00:00
|
|
|
return arg;
|
2016-06-30 08:55:56 +00:00
|
|
|
}]);
|
2016-06-29 10:37:17 +00:00
|
|
|
|
|
|
|
|
dot.transfer('stuff.phone', 'wanna.haves.phone', src, tgt);
|
|
|
|
|
|
|
|
|
|
var row = {
|
|
|
|
|
'id': 2,
|
|
|
|
|
'contact.name.first': 'John',
|
|
|
|
|
'contact.name.last': 'Doe',
|
|
|
|
|
'contact.email': 'example@gmail.com',
|
|
|
|
|
'contact.info.about.me': 'classified',
|
|
|
|
|
'devices[0]': 'mobile',
|
|
|
|
|
'devices[1]': 'laptop',
|
|
|
|
|
'some.other.things.0': 'this',
|
|
|
|
|
'some.other.things.1': 'that'
|
|
|
|
|
};
|
|
|
|
|
|
2016-06-30 08:55:56 +00:00
|
|
|
dot.object(row, (arg: any) => {
|
2017-01-24 21:33:36 +00:00
|
|
|
return arg;
|
2016-06-30 08:55:56 +00:00
|
|
|
});
|
2016-06-29 10:37:17 +00:00
|
|
|
|
|
|
|
|
dot.str('this.is.my.string', 'value', tgt);
|
|
|
|
|
|
|
|
|
|
var newObj = {
|
2017-01-24 21:33:36 +00:00
|
|
|
some: {
|
|
|
|
|
nested: {
|
|
|
|
|
value: 'Hi there!'
|
|
|
|
|
}
|
2019-01-18 09:20:37 +00:00
|
|
|
},
|
|
|
|
|
breath: {
|
|
|
|
|
value: 'Hello'
|
2017-01-24 21:33:36 +00:00
|
|
|
}
|
2016-06-29 10:37:17 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var val = dot.pick('some.nested.value', newObj);
|
|
|
|
|
console.log(val);
|
|
|
|
|
|
2019-01-18 09:20:37 +00:00
|
|
|
// Set a new value
|
|
|
|
|
val = dot.str('breath.value', 'World', newObj);
|
|
|
|
|
|
|
|
|
|
// Replacing with a new object
|
|
|
|
|
val = dot.set('breath', { value: 'Goodbye' }, newObj);
|
|
|
|
|
|
2016-06-29 10:37:17 +00:00
|
|
|
// Pick & Remove the value
|
|
|
|
|
val = dot.pick('some.nested.value', newObj, true);
|
|
|
|
|
|
|
|
|
|
// shorthand
|
|
|
|
|
val = dot.remove('some.nested.value', newObj);
|
2020-07-27 19:57:38 +00:00
|
|
|
val = dot.remove(['some.nested.value'], newObj)
|
2016-06-29 10:37:17 +00:00
|
|
|
|
|
|
|
|
// or use the alias `del`
|
|
|
|
|
val = dot.del('some.nested.value', newObj);
|
2020-07-27 19:57:38 +00:00
|
|
|
val = dot.del(['some.nested.value'], newObj);
|
|
|
|
|
|
|
|
|
|
// delete and get value of the deleted attribute
|
|
|
|
|
val = dot.delete('some.nested.value', newObj)
|
|
|
|
|
val = dot.delete(['some.nested.value'], newObj)
|
2016-06-29 10:37:17 +00:00
|
|
|
|
2017-01-24 21:33:36 +00:00
|
|
|
// convert object to dot object
|
|
|
|
|
var result = {};
|
|
|
|
|
dot.dot({ test: 'something' }, result);
|
|
|
|
|
result = dot.dot({ test: 'something' });
|
|
|
|
|
|
|
|
|
|
var dotWithArrow = new dot('=>');
|
2020-07-27 19:57:38 +00:00
|
|
|
|
|
|
|
|
var dotWithAnotherSeparator = new dot('->', true, false)
|
|
|
|
|
|
|
|
|
|
var objWithArray = {
|
|
|
|
|
author: 'John Doe',
|
|
|
|
|
books: ['A', 'B', 'C'],
|
|
|
|
|
about: {
|
|
|
|
|
hometown: 'Sampang, Jawa Timur',
|
|
|
|
|
skils: ['HTML', 'CSS', 'JS', 'TS']
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var defaultResult = dot.dot(objWithArray)
|
|
|
|
|
// set keepArray property
|
|
|
|
|
dot.keepArray = true
|
|
|
|
|
var keepArrayResult = dot.dot(objWithArray)
|
|
|
|
|
console.log('Default:', defaultResult)
|
|
|
|
|
console.log('KeepArray:', keepArrayResult)
|