如何在perl中检查$j->{component}是否为空?

问题描述 投票:0回答:1

这似乎对我不起作用,并且不知道如何让它发挥作用。接受我用它创建的 json 的系统不喜欢

"components": null,

if ($s->{category} == ""){
    $j->{components} = "Unspecified";
  }
   else
  {
    j->{components} = $s->{category};
  }

谢谢

perl
1个回答
0
投票

分配空字符串仍然是分配一些东西。如果你想知道哈希数组是否没有指定的键,可以使用

defined()
函数。如果你想销毁一个作业 - 使用
undef

#!/usr/bin/perl
my $j = {};

$j->{var1} = 1;
print $j->{var1}, "\n";

print "has var1\n" if (defined($j->{var1}));
print "does not have var2\n" if (! defined($j->{var2}));

undef $j->{var1};
print "does not have var1\n" if (! defined($j->{var1}));
© www.soinside.com 2019 - 2024. All rights reserved.