Comments (3)
If you would like type checking like that you could consider using typescript.
Somebody made a definition available at: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/dot-object
Although I do notice the types there should be updated, because the argument type is currently defined there as any
which really should be an object.
Perhaps I'll do a pull request there later, however I'm not really using typescript at the moment.
from dot-object.
Hi, @rhalff. But, i think is not a problem with the Typescript. I'm using the type definition. Like i said, it's just a definition of a behavior to dotobject.object(obj)
, when obj
is null
or undefined
. Actually, the library is giving an error of null
or undefined
. I think you just need to define a standard behavior, example:
DotObject.prototype.object = function (obj, mods) {
var self = this
// HERE COMES THE FILTER EXAMPLE
// I think if it's null or undefined, just return undefined
if (!obj) { // or, more readable, if (obj === null || obj === undefined)
return undefined;
}
Object.keys(obj).forEach(function (k) {
var mod = mods === undefined ? null : mods[k]
// normalize array notation.
var ok = parsePath(k, self.seperator).join(self.seperator)
if (ok.indexOf(self.seperator) !== -1) {
self._fill(ok.split(self.seperator), obj, obj[k], mod)
delete obj[k]
} else if (self.override) {
obj[k] = _process(obj[k], mod)
}
})
return obj
}
from dot-object.
I think updating the type definition would be enough else every single function should always test the type of each and every argument during runtime.
If in your code obj
could be undefined
or null
you should test it before making a call to .object
from dot-object.
Related Issues (20)
- Array index braces in dot function HOT 2
- CDN for dot-object HOT 1
- Modifiers are not supported in transform operation
- transform operation: include unmapped fields in target objet
- Matching all elements of the given Array. HOT 1
- dot.object fails converting numeric nested json object HOT 1
- Math Operator on DotObject
- Using dot.pick with proxy object
- Missing license property in package.json
- Strange issue with dot-object bash script
- keepArray doesn't transform the elements of an Array
- Index number in object arrays HOT 2
- Numeric-key objects result in sparse arrays HOT 2
- dot.dot Nothing happens HOT 1
- Consider adding ESM output
- Generic `keep` option
- [Feature Request] Implement a `keepLastArray` option
- Querying keys with spaces and special separators in them
- Set/change value of property? HOT 1
- Bug with numeric object keys in arrays
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dot-object.