Wenn Sie {}
als einziges Argument übergeben (es gibt also keine Kommas im Aufruf), kann Ruby nicht sagen, ob Sie einen leeren Hash oder einen leeren Block meinen, also müssen Sie Klammern verwenden, um es zu unterscheiden:
In anderen Fällen ist eine gute Faustregel, dass Klammern erforderlich sind, wenn Sie den Methodenaufruf direkt als Argument verwenden, d. h.
%Vor%Wenn Ihr Methodenaufruf noch verschachtelter wird, ist es wahrscheinlich besser, Methodenaufrufe mit lokalen Variablen zu speichern (oder Ihre Schnittstellen zu überdenken), d. h.
%Vor% Sie können zu <<
von push
wechseln, um diese Fallstricke zu vermeiden.
Wenn Sie wie folgt schreiben:
%Vor%Ruby wird dies übersetzen:
%Vor% push
Methode ohne Argumente und mit Block
Tags und Links ruby