我很好奇以下perl片段的结果:
my $var1 ;
my $var2 ;
if( $var1 eq $var2 ) {
print "yes";
} else {
print "no";
}
Run Code Online (Sandbox Code Playgroud)
和
my $var1 ;
my $var2 = "";
if( $var1 eq $var2 ) {
print "yes";
} else {
print "no";
}
Run Code Online (Sandbox Code Playgroud)
结果证明是yes(Perl 5.16).
与javascript规范不同,有明确的等式比较算法描述(http://www.ecma-international.org/ecma-262/5.1/#sec-11.9.3),Equality Operators的perl doc说:
如果左参数字符串等于右参数,则二进制"eq"返回true.
但是字符串相等的定义是什么?
perl ×1