اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

هل السؤال متعلق بأحد الدورات؟ أرجو منك التعليق أسفل فيديو الدورة من أجل مساعدتك بشكل أفضل.

وطرح الأسئلة العامة هنا في قسم أسئلة البرمجة.

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

أيضًا عندما تستدعي دالة أو تقوم بإرجاع قيمة من دالة دون تعيين قيمة لها، فإن القيمة التي تعود بها الدالة ستكون undefined.

وعند الوصول إلى خاصية غير موجودة في كائن، فإن القيمة التي ستحصل عليها ستكون undefined.

مثال:

let z;
console.log(z); // النتيجة ستكون undefined

وقد يختلط الأمر عليك بين undefined وnull.

وnull تعني أن المتغير قد تم تعيينه بقيمة فارغة أو أنه لا يشير إلى أي شيء وتستخدم null في الغالب عندما نود إعطاء متغير قيمة فارغة أو إزالة القيمة الحالية الموجودة في المتغير.

وفي حالة استدعاء دالة وتحتاج إلى تمرير وسيطة (argument) لا تحمل أي قيمة، تستطيع تعيين قيمة null لتلك الوسيطة.

مثال:

let y = null;
console.log(y); // النتيجة ستكون null

أي أن الفرق بينهما يكمن في الاستخدام الدلالي.، حيث أن الـ undefined hستخدم عندما لا تتوفر قيمة معينة، بينما الـ null يُستخدم عندما تكون هناك حاجة لتعيين قيمة فارغة أو إزالة القيمة الحالية لمتغير معين.

  • 0
نشر

القيمة undefined في البرمجة هي نوع من أنواع البيانات التي تستخدم للدلالة على أن متغيرًا ما لم يتم تعيين قيمة له أو لم يتم تحديد قيمته.

نستخدم القيمة undefined في جافاسكريبت للتحقق من حالات مثل:
- إذا كان متغيرًا ما لم يتم تعريفه أو تم تعريفه ولم يتم تعيين قيمة له.
- إذا كانت دالةً ما لم ترجع أي قيمة.
- إذا كانت خاصيةً ما غير موجودة في كائن.
- إذا كانت قيمة معاملٍ ما غير محددة.

القيمة undefined تساعدنا على التفريق بين الحالات التي لا توجد فيها قيمة معروفة أو صالحة من الحالات التي توجد فيها قيمة خالية أو صفرية.

هذه بعض الأمثلة على القيمة undefined في js:

- إذا أعلنا عن متغير دون تعيين قيمة له، سيكون نوعه undefined. مثلا:

let x; // x معلن ولكن لم يتم تعيينه
console.log(x); // undefined
console.log(typeof x); // \"undefined\"


- إذا استدعينا دالة دون تمرير قيمة لمعامل ما، سيكون قيمة ذلك المعامل undefined. مثلا:

function add(a, b) {
  return a + b;
}

console.log(add(5)); // NaN, لأن b هو undefined
console.log(add(5, undefined)); // NaN, نفس السبب السابق

- إذا كتبنا دالة دون تحديد قيمة الإرجاع، سترجع الدالة القيمة undefined. مثلا:

function sayHello(name) {
  console.log(\"Hello, \" + name);
}

let result = sayHello(\"Ahmed\"); // Hello, Ahmed
console.log(result); // undefined, لأن الدالة لم تحدد قيمة الإرجاع


- إذا حاولنا الوصول إلى خاصية غير موجودة في كائن، سترجع القيمة undefined. مثلا:

let person = {
  name: \"Ali\",
  age: 25
};

console.log(person.gender); // undefined, لأن الكائن person ليس لديه خاصية gender

للتعرف اكثر يمكنك الاطلاع على  القيمة الغير معرفة في جافاسكريبت من موسوعة حسوب

  • 0
نشر

تطبيقاً على التعليق السابق لفهم أهمية استخدام undefined  إليك مثال حول استخدام قيمة "undefined" في دالة:

function addNumbers(a, b) {
  if (typeof a === 'number' && typeof b === 'number') {
    return a + b;
  } else {
    return undefined;
  }
}

console.log(addNumbers(2, 3)); // الناتج: 5
console.log(addNumbers(2, '3')); // الناتج: undefined

في هذا المثال، لدينا دالة تسمى "addNumbers" تستقبل معاملين "a" و "b". تقوم الدالة بفحص ما إذا كان كل من المعاملين من نوع "number". إذا كانا كذلك، تقوم الدالة بجمعهما معًا وإرجاع النتيجة. ومع ذلك، إذا كان أي من المعاملين ليس من نوع "number"، فستعيد الدالة قيمة "undefined".

في الاستدعاء الأول لـ "addNumbers"، قمنا بإرسال الأرقام 2 و 3، وستعيد الدالة النتيجة المتوقعة 5. في الاستدعاء الثاني، قمنا بإرسال الرقم 2 والسلسلة '3'. نظرًا لعدم كون المعامل الثاني رقمًا، ستعيد الدالة قيمة "undefined".

هذا مثال واحد فقط على كيفية استخدام قيمة "undefined" في دالة لمعالجة المدخلات غير المتوقعة وتجنب الأخطاء.

  • 0
نشر

في JavaScript ، قيمة undefined تعني أن متغير أو خاصية ليس لديه قيمة معينة. يمكن استخدام قيمة undefined في عدة سيناريوهات مختلفة:

عندما يتم إعلان متغير ولم يتم تعيين قيمة له بعد:

let x;
console.log(x); // undefined

في هذه الحالة، x هو متغير تم إنشاؤه ولكن لم يتم تعيين قيمة له بعد.

عندما تعود دالة بدون قيمة عائدة:

function doSomething() {
  // لا يوجد عبارة return هنا
}
const result = doSomething();
console.log(result); // undefined

عندما لا يتم استدعاء العبارة return داخل الدالة لتعيين قيمة عائدة، فإن الدالة تعود قيمة undefined.

عندما يتم استدعاء خاصية غير موجودة في كائن:

const person = {
  name: "John",
  age: 30
};
console.log(person.address); // undefined

في هذا المثال، الخاصية address غير موجودة في كائن person، لذا عند الوصول إليها ستعود قيمة undefined.

استخدام قيمة undefined يمكن أن يكون مفيدًا للتحقق من وجود قيمة في متغير أو للتحقق من حالة تنفيذ الكود. ومع ذلك، يجب أن تكون حذرًا عند التعامل مع قيمة undefined لتجنب وجود أخطاء. يمكن استخدام العبارة typeof للتحقق من نوع القيمة، حيث ستعود "undefined" عندما تكون قيمة المتغير undefined:

console.log(typeof x); // "undefined"

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...