Hogyan határozhatunk meg egy "meghatározatlan helyi változó" Ruby hibát

Ban ben Rubin, nem kell deklarálnia a változókat, de hozzá kell rendelnie valamit hozzájuk, mielőtt utalni tudnának rájuk.

Ha a helyi változó ez még nem létezik, akkor a két hiba egyikét láthatja.

Ruby NameError üzenetek

NameError: meghatározatlan helyi változó vagy „a” módszer a # számára 
NameError: meghatározatlan helyi változó vagy `a 'módszer a fő: objektumhoz

Jegyzet: Lehet, hogy különböző azonosítók vannak a helyett 'A' felett.

Ez egy példa, amikor a kód generálja a Ruby "NameError" üzenetet a változó óta egy még nem rendeltek hozzá senkihez:

felteszi a

Hogyan javítsuk ki a hibát

A változókat felhasználásuk előtt hozzá kell rendelni. Tehát a fenti példa segítségével a hiba kijavítása olyan egyszerű, mint a következő:

a = 10. felteszi a. 

Miért kapja ezt a hibát?

Nyilvánvaló válasz az, hogy egy olyan változóra utal, amelyet még nem hoztak létre. Ez leggyakrabban az elírásból származik, de előfordulhat, ha a kód újrareaktiválása és a változók átnevezése történik.

Előfordulhat, hogy a "NameError: meghatározatlan helyi változó" Ruby hiba is megjelenik, ha karakterláncot kíván beírni. A húrokat akkor értjük meg, ha léteznek idézetek között. Ha nem idézeteket használt, akkor a Ruby azt gondolja, hogy egy módszerre vagy egy változóra hivatkozik (amely nem létezik), és eldobja a hibát.

instagram viewer

Tehát nézzen vissza a kódjára, hogy megtudja, mire utal ez a változó, és javítsa ki. Érdemes lehet ugyanabban a módszerben keresni ugyanazon változónév más példányait - ha egy helyen hibás, máshol helytelen lehet.

instagram story viewer