"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > فك تشفير جافا سكريبت: إتقان القيم الخالية وغير المحددة والفارغة

فك تشفير جافا سكريبت: إتقان القيم الخالية وغير المحددة والفارغة

تم النشر بتاريخ 2024-08-06
تصفح:934

Decoding JavaScript: Mastering Null, Undefined, and Empty Values

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

1. لاغية

null هي قيمة غير متعمدة. إنه يمثل متغيرًا تم تعريفه بشكل صريح على أنه لا قيمة له.

let myVariable = null;
console.log(myVariable); // Output: null
console.log(typeof myVariable); // Output: "object"

ملاحظة: typeof null يُرجع كائنًا، وهو ميزة معروفة في JavaScript لأسباب قديمة.

2. غير محدد

يمثل غير محدد متغيرًا تم الإعلان عنه ولكن لم يتم تعيين قيمة له بعد.

let myUndefinedVariable;
console.log(myUndefinedVariable); // Output: undefined
console.log(typeof myUndefinedVariable); // Output: "undefined"

function myFunction(param) {
    console.log(param);
}
myFunction(); // Output: undefined

3. سلسلة فارغة ('')

السلسلة الفارغة هي سلسلة صالحة بطول صفر.

let emptyString = '';
console.log(emptyString); // Output: ""
console.log(typeof emptyString); // Output: "string"
console.log(emptyString.length); // Output: 0

4. مصفوفة فارغة ([])

المصفوفة الفارغة هي قائمة لا تحتوي على عناصر.

let emptyArray = [];
console.log(emptyArray); // Output: []
console.log(typeof emptyArray); // Output: "object"
console.log(Array.isArray(emptyArray)); // Output: true
console.log(emptyArray.length); // Output: 0

5. المقارنة وحالات الاستخدام

دعونا نقارن هذه الأنواع المختلفة:

console.log(null == undefined); // Output: true
console.log(null === undefined); // Output: false

console.log('' == null); // Output: false
console.log('' == undefined); // Output: false

console.log([] == null); // Output: false
console.log([] == undefined); // Output: false

console.log(Boolean(null)); // Output: false
console.log(Boolean(undefined)); // Output: false
console.log(Boolean('')); // Output: false
console.log(Boolean([])); // Output: true

التحقق من وجود فارغة أو غير محددة

function isNullOrUndefined(value) {
    return value == null;
}

console.log(isNullOrUndefined(null)); // Output: true
console.log(isNullOrUndefined(undefined)); // Output: true
console.log(isNullOrUndefined('')); // Output: false
console.log(isNullOrUndefined([])); // Output: false

التعامل مع السلاسل والمصفوفات الفارغة

function isEmpty(value) {
    if (typeof value === 'string') {
        return value.length === 0;
    }
    if (Array.isArray(value)) {
        return value.length === 0;
    }
    return false;
}

console.log(isEmpty('')); // Output: true
console.log(isEmpty([])); // Output: true
console.log(isEmpty('hello')); // Output: false
console.log(isEmpty([1, 2, 3])); // Output: false

6. أفضل الممارسات

  1. استخدم القيمة الخالية عندما تريد الإشارة إلى أن المتغير ليس له قيمة بشكل صريح.
  2. دع المتغيرات تكون غير محددة عندما لا يتم تعيين قيمة لها.
  3. استخدم سلاسل فارغة ('') عندما تحتاج إلى سلسلة لا تحتوي على أحرف.
  4. استخدم المصفوفات الفارغة ([]) عندما تحتاج إلى قائمة لا تحتوي على عناصر.
  5. استخدم دائمًا المساواة الصارمة (===) ما لم يكن لديك سبب محدد لعدم القيام بذلك.
  6. عند التحقق من وجود قيمة فارغة أو غير محددة، يمكنك استخدام القيمة == خالية.

خاتمة

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

تذكر دائمًا أن تأخذ في الاعتبار سياق تطبيقك عند تحديد أي منها ستستخدمه، وأن تكون متسقًا في نهجك عبر قاعدة التعليمات البرمجية الخاصة بك.

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/akshatsoni26/decoding-javascript-mastering-null-undef-and-empty-values-hld?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] للحذف هو - هي
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3