[
https://issues.apache.org/jira/browse/COUCHDB-1476?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13266468#comment-13266468
]
James Howe commented on COUCHDB-1476:
-------------------------------------
What's wrong with Array.isArray and typeof v === 'object', or even just
JSON.parse to do JSON parsing?
Take it up with the library developers if they're using broken
context-dependent code.
> In view map function doc object does not have .constructor defined on any of
> the contained objects.
> ---------------------------------------------------------------------------------------------------
>
> Key: COUCHDB-1476
> URL: https://issues.apache.org/jira/browse/COUCHDB-1476
> Project: CouchDB
> Issue Type: Bug
> Components: JavaScript View Server
> Affects Versions: 1.2
> Environment: CouchDB 1.2 Release binary on Windows 2003
> Reporter: Andrew Reslan
> Priority: Minor
>
> I am doing some complex view map processing using external libraries.
> These libraries use the following checks when parsing a JSON document:
> function _isObject(v) {
> return (v !== null && !_isUndefined(v) && v.constructor === Object);
> }
> function _isArray(v) {
> return (v !== null && !_isUndefined(v) && v.constructor === Array);
> }
> The 'doc' object passed to the mapping function does not appear to have the
> .constructor property defined, nor on any of the enclosed objects, this
> causes the JSON processing to fail.
> A simple workaround is to stringily the doc object and parse the results
> back, the fixed document then has the .constructor properties correctly set
> on all objects
> var fixed = JSON.parse(JSON.stringify(doc));
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira