将一个对象从一个数组添加到另一个数组

时间:2017-02-08 19:58:27

标签: arrays powershell object

我无法弄清楚我做错了什么,希望有人能指出我正确的方向。

我正在尝试遍历一个对象数组并对每个对象进行测试,当某些事情成立时,我想将该对象添加到它自己的数组中,作为单个对象(就像它在原始对象数组)。我似乎是将信息添加到新数组中,但是当我通过newarray [0]引用新数组时,它给了我对象的第一项,而不是整个对象本身。

问题似乎在于这一行:

/home/chopin/Development/homeautomation/node_modules/mongojs/node_modules/mongodb/lib/utils.js:98
    process.nextTick(function() { throw err; });
                                  ^

Error: Can't set headers after they are sent.
    at ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:344:11)
    at ServerResponse.header (/home/chopin/Development/homeautomation/node_modules/express/lib/response.js:719:10)
    at ServerResponse.send (/home/chopin/Development/homeautomation/node_modules/express/lib/response.js:164:12)
    at ServerResponse.json (/home/chopin/Development/homeautomation/node_modules/express/lib/response.js:250:15)
    at /home/chopin/Development/homeautomation/routes/devices.js:80:9
    at /home/chopin/Development/homeautomation/node_modules/mongojs/lib/collection.js:50:5
    at handleCallback (/home/chopin/Development/homeautomation/node_modules/mongojs/node_modules/mongodb/lib/utils.js:95:56)
    at /home/chopin/Development/homeautomation/node_modules/mongojs/node_modules/mongodb/lib/cursor.js:674:5
    at handleCallback (/home/chopin/Development/homeautomation/node_modules/mongojs/node_modules/mongodb/node_modules/mongodb-core/lib/cursor.js:171:5)
    at nextFunction (/home/chopin/Development/homeautomation/node_modules/mongojs/node_modules/mongodb/node_modules/mongodb-core/lib/cursor.js:682:5)
[nodemon] app crashed - waiting for file changes before starting...

csv文件中的数据是计算机主机名,计算机IP地址,错误代码和代理ID。

e.g。 MACHINENAME,10.10.10.10,ERROR101,123456FF

$global:MachinesInAD += $global:MachineObject

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为你所谓的对象,只是一个数组(它是一个对象,但你的属性是元素,而不是属性)。

无论如何,当你这样做时:

$global:MachinesInAD += $global:MachineObject

你最终连接数组。

@(1,2,3) + @(4,5,6)

这导致一个包含6个元素的数组,而不是3个数字和一个数组。

您应该使用[hashtable][PSObject]而不是数组;或者正如您在构建原始数据时所做的那样,您需要将其强制转换为单元素数组,如:

$global:MachinesInAD += ,@($global:MachineObject)