refactor: use Object.hasOwnProperty #68
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
skipduplicate
key is only checked for its existence, its value is actually not relevant to its purpose, even when the value isundefined
.If the key is there, its value is never
undefined
though, but ratherboolean
,string
ornumber
.$ hexo migrate rss path.xml --skipduplicate
=>args: { _: ['path.xml'], skipduplicate: true }
$ hexo migrate rss path.xml --skipduplicate undefined
=>args: { _: ['path.xml'], skipduplicate: 'undefined' }
$ hexo migrate rss path.xml --skipduplicate 123
=>args: { _: ['path.xml'], skipduplicate: 123 }
Object.prototype.hasOwnProperty
is indeed slower thantypeof
, but it only runs once so it shouldn't cause noticeable latency. Thus, in this use case, better accuracy can be achieved without performance impact.