2016-07-02 22 views

Antwort

2

So etwas wie dieses

def your_method(parameter) 
    if parameter 
    # do something 
    else 
    puts "parameter has no value" 
    end 
end 
+0

habe ich versucht, diese und got-> name Fehler: nicht definiert lokale Variable, ... nicht sicher, wo ich schief gelaufen ist. – MRG

+1

@SlySherZ '0' ist truthy in Ruby. – Aetherus

+0

Wenn der 'Parameter' ein falscher Wert sein könnte, wie zB false, benötigen Sie eine komplexere Bedingung. Überprüfen Sie: http://stackoverflow.com/questions/288715/checking-if-a-variable-is-defined – SlySherZ

1

Sie es wie folgt tun:

def foo bar 
    return puts "..." unless defined?(bar) == "local-variable" 
    # Otherwise, continue with the method 
    ... 
end 

jedoch die Variable bar dem gegebenen Argument zugewiesen wird immer definiert. Die unless ... Bedingung wird niemals erfüllt sein. Ihre Frage ergibt also keinen praktischen Sinn.

Verwandte Themen