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

السؤال

نشر

أريد أن أتأكد من خلال شرط أن كائن معين Object لا يحتوي على أي عناصر بداخله (كائن فارغ { })

حاولت مقارنته بالفعل مع { }:

const myObj = {}
console.log(myObj === {});	// False

لكن يبدو أن هذه الطريقة لا تعمل لسببٍ ما

كيف يمكنني التأكد من أن الكائن لا يحتوي على أي عناصر في JavaScript؟

Recommended Posts

  • 1
نشر

إن الغرض Object يسمح لنا بالحصول على الكثير من المعلومات من الأغراض في ال javascript و أحد هذه المعلومات هي ال attributes الخاصة بالغرض، و هو يعيد ذلك على شكل مصفوفة و بالتالي يمكن التحقق من أن طولها يساوي الصفر.

يمكن القيام بذلك بالشكل التالي:

const myObj = {};

Object.keys(myObj).length == 0;

 

  • 1
نشر

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

يكون الاستعمال العام لها كـ:

jQuery.isEmptyObject({}); // true
jQuery.isEmptyObject({ foo: "bar" }); // false

 

  • 1
نشر

يمكنك استخدام الدالة isEqual من المكتبة Lodash بعد تنصيبها وتضمينها بالشكل التالي:

_.isEqual(object, {});

حيث أن object هو الكائن الذي تريد اختباره، و الوسيط الثاني هو كائن فارغ 

كما يمكن تحويل الكائن لنص ثم اختباره مع نتيجة تحويل كائن فارغ لنص من خلال الدالة  JSON.encode

JSON.encode(obj)===JSON.encode({})

يوجد حلول أخرى حسب البيئة التي تستخدمها مثلاً في Node استخدم isDeepStrictEqual , ودالة equals في Angular..

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...