Pages

الفرق ما بين null و undefined في جافا سكريبت؟



null وundefined كايبانو متشابهين ولكن من بعد ماغادي تقرا هاد الأسطر غايبان ليك قداش هوما مختلفين، فهاد المقال غانشوفو نقط الشبه والإختلاف بيناتهم.

شناهيا null؟
كاين جوج ديال لحوايج كايميزوnull و لي هوما:
  • null كاتعبر على une valeur لي غير موجودة أو خاوية.
  • إلا بغيتي تخدم بnull خاسك تassigniha، مثال:  (let a = null)


شناهيا undefined؟
ملي تبان ليك undefined عرف بلي واحد variable تdeclarat ولكن مازال ماassignat ليه une valeur.
شوف المثال التالي:

كيفما درنا مع null نقدرو نديرو مع undefined، يعني نيشان نassigniw ليها undefined، شوف المثال التالي:


عاوتاني ملي كانكونو خدامين بLes objets و بغينا نaccédiw لشي propriété ماكايناش فداك Objet، كاترجع لينا undefined
نقط التشابه مابين null و undefined؟

في جافا سكريبت كاين ستة ديال Falsy values، بجوج null و undefined ضمن هاد ستة:









  • false
  • Le nombre zéro) 0)
  • (Chaîne vide) “”
  • null
  • undefined
  • (NaN (Not a number 

  • أي valeur من غير هادو كاتعتبر Truthy.

    و في جافا سكريبت نيت كاين ستة ديال primitive values، بجوج null و undefined ضمن هاد ستة:









  • Boolean
  • Null
  • Undefined
  • Number
  • String
  • Symbol

  • ما تبقى من les valeurs في جافا سكريبت يقدر يكون Array، Object، Function...
    لغريب في الامر أنك ملي كادير typeof على null كاترجع ليك object:

    هادشي وقع من لبداية في جافا سكريبت وكيتعتبر بشكل عام خطأ في كيفاش تقاد جافا سكريبت الأصلي.

    كيفما كاتعرفو في جافا سكريبت == كانقاربنو بيها loose equality، بما أن بجوج null و undefined كايتعتابرو من Falsy values داكشي علاش:

    و بطبيعة الحال راه null و undefined عندهم type مختلف داكشي علاش عاوتاني :


    إلا بغيتي تزيد تفهم الفرق ما بين == و ===، كانصحك تشوف هاد لي كتبت قبل : الفرق ما بين == و ===

    مع Ecmascript 6  بانو ما يسمى Default parameters، بكل بساطة إلا عيطتي لشي fonction بلا مدوز l'argument كيتخاد هاداك لي عطيتي par défaut، شوف لمثال جاي و غاتفهم:

    لاحظ معايا ملي كاندوز undefined كايخد داك default parameter لي هو 'World'، و لكن إلا دوزت null ماكيتخادش.

    كانتمنا نكون نفعتكوم فشي بركة، الله يعاونكوم

    houdass

    Développeur depuis quelques années, j'ai une connaissance approfondie de nombreux langages et frameworks. Curieux de comprendre le "comment ça fonctionne" plutôt que de simplement "utiliser", c'est avec cet état d'esprit que j'évolue depuis plusieurs années et que j'élargie mes horizons.

    Related Posts:

    Aucun commentaire:

    Enregistrer un commentaire