Ben*_*TAN 5 arrays powershell multidimensional-array
我在将现有的vbs脚本转换为PowerShell脚本时遇到了一些问题.我在这里用一些虚拟代码而不是原始代码来说明.在例1中,我在数组中只有1组元素,在将数组变量返回给函数时,它只会显示P.
但是在示例2中,我在数组中有2组元素,在将数组变量返回给函数时,它将正确显示元素.
如果在示例1和2中的函数内打印数组,则获取结果没有任何问题.
我用谷歌搜索,无法找到任何解决方案.非常感谢您的帮助.
例1:
function testArray {
    $array1 = @()
    $array1 += ,@("Apple","Banana")
    return $array1
}
$array2 = testArray
Write-Host $array2[0][1]
结果是"P".
例2:
function testArray {
    $array1 = @()
    $array1 += ,@("Apple","Banana")
    $array1 += ,@("Orange","Pineapple")
    return $array1
}
$array2 = testArray
Write-Host $array2[0][0]
结果是"Apple".
PowerShell展开从函数返回的数组.使用逗号运算符(,,一元数组构造运算符)预先包含返回的数组,以将其包装在另一个数组中,该数组在返回时展开,使嵌套数组保持不变.
function testArray {
    $array1 = @()
    $array1 += ,@("Apple","Banana")
    return ,$array1
}
| 归档时间: | 
 | 
| 查看次数: | 822 次 | 
| 最近记录: |