You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在PSObject声明字面量中,能否直接引用同一对象的其他属性值?

问题:能否在PSCustomObject字面量内部引用已有属性值

请问是否可以在[pscustomobject]字面量声明内部,引用该对象已定义的属性值?示例代码如下:

[pscustomobject] @{
    Number = 5
    IsLessThanZero = $this.Number -lt 0
}

相关说明与致谢

  • 特别感谢Santiago和Michael补充了关键细节,解决了该场景下的行为特性问题,他们一直是可靠且准确的技术资源。
  • 问题中的示例特意未将对象赋值给变量,目的是演示创建对象后直接输出的常见使用场景,以下代码可更清晰地体现这一点:
    [pscustomobject] @{
        Number = 5
        IsLessThanZero = $this.Number -lt 0
    } | Out-Default
    
  • Santiago和Michael的回答覆盖了静态与动态两种实现方案,实用性很强。针对本问题的简化示例,其实无需使用动态方案,原因如下:
    • 属性.Number的值从对象创建到输出全程未被修改
    • 仅涉及单个对象,前后无额外代码逻辑
  • 示例中使用$this仅为指代当前对象(本问题与类无关,但核心逻辑类似)。若改用$_容易造成混淆,因为[pscustomobject]声明前不存在隐含管道。
  • 关于本问题是否为重复问题的说明:另有一个问题的示例使用了$_,与本问题场景不同,因此二者不属于重复问题。

内容的提问来源于stack exchange,提问作者Paul π

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 02:57:07