我在google上环顾四周,找不到任何东西来解释什么//''意味着当它在Perl表达式的末尾时,例如
my $username = $cgi->param('username') // '';
Run Code Online (Sandbox Code Playgroud)
我唯一能想到的是它在表单中将用户名设置为空字符串,类似于HTML中标签内部的值='',但我不确定.
它是定义的或运营商.喜欢||但查找变量是否已定义,而不是真实:
my $number;
$number = '0';
my $var = $number // '1';
print "$var\n";
Run Code Online (Sandbox Code Playgroud)
将0按照$number定义打印.
但是,代替||,哪些测试的真实性:
my $number;
$number = '0';
my $var = $number || '1';
print "$var\n";
Run Code Online (Sandbox Code Playgroud)
将print 1,as,虽然$number已定义,但评估为false