Safe navigation operator (&.) für null

Als Ruby 2.3 stellt die Sichere navigation operator(&.), ein.k.ein einsamer Betreiber, das Verhalten auf nil Objekt scheint merkwürdig zu sein.

nil.nil?    # => true
nil&.nil?   # => nil

Ist, dass entwickelt sich zu Verhalten hat, wie dieser Weg? Oder einige edge-Fall, der Weg rutschte, wenn Sie den einsamen Betreiber?

  • Nicht klar, warum es scheint seltsam für Sie.
  • Warum ist dies besser als mit try in Rails?
  • Ich denke, das ist inspiriert von try.
  • Es ist seltsam, weil die Fragen für nil? auf etwas, das offensichtlich nil (wie das Ergebnis der nil&.) sollte logisch true zurück, genau wie nil.nil? hat
  • Die gotcha ist, dass man eigentlich nicht aufrufen nil? auf das Ergebnis nil&., aber es ist eher ein Teil des ursprünglichen Ausdrucks nil && nil.nil?, die ignoriert wird in dieser Auswertung, da der erste Teil dieses Ausdrucks ist nil und so gibt. Sehen Oeste Antwort.
InformationsquelleAutor sbs | 2016-01-04
Schreibe einen Kommentar