كيفية حل خطأ روبي "متغير محلي غير محدد"

في روبي، لست مضطرًا إلى إعلان المتغيرات ، ولكن يجب عليك تعيين شيء لها قبل أن تتم الإشارة إليها.

إذا كنت تشير إلى متغير محلي غير موجود حتى الآن ، قد ترى أحد الخطأين.

روبي اسم رسائل الخطأ

NameError: متغير محلي غير محدد أو الطريقة "a" لـ # 
NameError: متغير محلي غير معروف أو طريقة "a" للمفتاح الرئيسي: Object

ملحوظة: قد يكون هناك معرّفات مختلفة بدلاً من 'أ' في الاعلى.

هذا مثال حيث ستقوم الشفرة بإنشاء رسالة Ruby "NameError" منذ المتغير أ لم يتم تعيين أي شيء بعد:

يضع أ

كيفية إصلاح الخطأ

يجب تعيين المتغيرات قبل استخدامها. لذا ، باستخدام المثال أعلاه ، إصلاح الخطأ بسيط مثل القيام بهذا:

أ = 10. يضع أ. 

لماذا تحصل على هذا الخطأ

الجواب الواضح هو أنك تشير إلى متغير لم يتم إنشاؤه بعد. غالبًا ما يكون هذا بسبب خطأ مطبعي ولكن قد يحدث عند إعادة بناء الرمز وإعادة تسمية المتغيرات.

قد ترى أيضًا خطأ روبي "NameError: undefined local variable" إذا كنت تنوي إدخال سلسلة. تُفهم السلاسل عندما تكون موجودة بين الاقتباسات. إذا لم تستخدم علامات الاقتباس ، فستعتقد روبي أنك قصدت الرجوع إلى طريقة أو متغير (غير موجود) وإلقاء الخطأ.

instagram viewer

لذا ، انظر إلى التعليمات البرمجية الخاصة بك لمعرفة ما يفترض أن يشير إليه هذا المتغير ، وقم بإصلاحه. قد ترغب أيضًا في البحث عن مثيلات أخرى من نفس اسم المتغير بنفس الطريقة - إذا كانت خاطئة في مكان واحد ، فقد تكون خاطئة في أماكن أخرى.

instagram story viewer