This is due to the category of operators falling under //as well ==.
==is an "equality operator", although it //belongs to the category of "logical C-style operators".
As an example; &&is in the same category as, and //both of the statements below are equivalent when it comes to operator priority. Can this facilitate understanding?
print "hello world" if $may_be_undefined && 0 == 2;
print "hello world" if $may_be_undefined
C- Defined-or (//)
C, Perl// C- . , , ||, , , .
, $a//$b ($ a) || $b ( , $a, ($ a)) , ($ a)? $a: $b ( , lvalue, $a//$b ).
. , $a $b, ($ a//$b).
||,// && ( C || & &, 0 1).