Javascript 数组变得未定义
我现在有最奇怪的虫子;我构建此函数是为了从服务器的输出中删除xss漏洞,在解析MongoDB结果对象(模式中包含子文档)时,数组属性会立即从数组更改为未定义。请参阅下面的代码和跟踪: 代码:Javascript 数组变得未定义,javascript,node.js,Javascript,Node.js,我现在有最奇怪的虫子;我构建此函数是为了从服务器的输出中删除xss漏洞,在解析MongoDB结果对象(模式中包含子文档)时,数组属性会立即从数组更改为未定义。请参阅下面的代码和跟踪: 代码: 知道为什么会发生这种情况吗?我知道这是一件如此愚蠢的事情。干杯 for(let i = 0 ; i < object[prop].length ; i++){ object[prop] = xss(object[prop][i]); } xss Array save: [null,n
知道为什么会发生这种情况吗?我知道这是一件如此愚蠢的事情。干杯
for(let i = 0 ; i < object[prop].length ; i++){
object[prop] = xss(object[prop][i]);
}
xss Array
save: [null,null,null,null]
[ [Function: notify],
[Function: notify],
[Function: notify],
[Function: notify] ]
object
[Function: Array]
Array
4
TypeError: Cannot read property 'length' of undefined
at xssObjectEscape (/var/www/smq/services/secure/xss.js:30:39)
at xssObjectEscape (/var/www/smq/services/secure/xss.js:34:7)
at xssObjectEscape (/var/www/smq/services/secure/xss.js:34:7)
at xssObjectEscape (/var/www/smq/services/secure/xss.js:34:7)
at xss (/var/www/smq/services/secure/xss.js:5:12)
at filter.user.then (/var/www/smq/handlers/session.js:29:21)
at process._tickCallback (internal/process/next_tick.js:103:7)
for(let i = 0 ; i < object[prop].length ; i++){
object[prop] = xss(object[prop][i]);
}
object[prop] = object[prop].map(xss)