يحدد Js نوعًا غير محدد
اليوم، استخدم showModalDialog لفتح الصفحة وإرجاع القيمة. عندما تنقر الصفحة المفتوحة على زر الإغلاق أو تنقر مباشرة على زر الإغلاق في المتصفح، تكون قيمة الإرجاع غير محددة.
لذلك اتخذ حكمك الخاص
var reValue=window.showModalDialog(""،"،"")؛
إذا (إعادة القيمة == غير محدد) {
تنبيه("غير محدد");
}
وجدت أنني لا أستطيع معرفة ذلك، لذا قمت أخيرًا بالتحقق من المعلومات وأحتاج إلى استخدام typeof.
طريقة:
إذا (typeof(reValue) == "غير محدد") {
تنبيه("غير محدد");
}
typeof يُرجع سلسلة، هناك ستة احتمالات: "رقم"، "سلسلة"، "منطقي"، "كائن"، "وظيفة"، "غير محدد"
الفرق بين غير محدد وفارغ وNaN في js
1. تحليل النوع:
هناك 5 أنواع من البيانات في js، بما في ذلك غير محدد ومنطقي ورقم وسلسلة وكائن. الأنواع الأربعة الأولى هي أنواع بدائية، والنوع الخامس هو النوع المرجعي.
فار a1؛
var a2 = true;
فار a3 = 1;
var a4 = "مرحبا";
var a5 = new Object();
var a6 = null;
var a7 = NaN;
فار a8 = غير محدد؛
تنبيه (نوع أ)؛ // عرض "غير محدد"
تنبيه (نوع a1)؛ // عرض "غير محدد"
تنبيه (نوع a2)؛ // عرض "منطقي"
تنبيه (نوع a3)؛ // عرض "الرقم"
تنبيه (نوع a4) // عرض "سلسلة"
تنبيه (نوع a5) // عرض "الكائن"
تنبيه (نوع a6) // عرض "الكائن"
تنبيه (نوع a7)؛ // عرض "الرقم"
تنبيه (نوع a8)؛ // عرض "غير محدد"
من الكود أعلاه، يمكننا أن نرى أن القيم غير المحددة والقيم غير المخصصة غير محددة، والقيمة الخالية هي كائن خاص، وNaN هو رقم خاص.
2. عمليات المقارنة
var a1; // قيمة a1 غير محددة
var a2 = null;
var a3 = NaN;
تنبيه (a1 == a2)؛ // عرض "صحيح"
تنبيه (a1! = a2)؛ // عرض "خطأ"
تنبيه (a1 == a3)؛ // عرض "خطأ"
تنبيه (a1! = a3)؛ // عرض "صحيح"
تنبيه (a2 == a3)؛ // عرض "خطأ"
تنبيه (a2! = a3)؛ // عرض "صحيح"
تنبيه (a3 == a3)؛ // عرض "خطأ"
تنبيه (a3! = a3)؛ // عرض "صحيح"
من الكود أعلاه، يمكننا استخلاص النتيجة: (1) غير محدد وفارغ متساويان؛ (2) NaN لا يساوي أي قيمة، ولا يساوي نفسه.
خاصية جافا سكريبت غير محددة
التعريف والاستخدام
يتم استخدام السمة غير المحددة لتخزين القيمة غير المحددة لجافا سكريبت.
قواعد اللغة
غير محدد
يوضح
لا يمكنك استخدام حلقة for/in لتعداد خاصية غير محددة، ولا يمكنك استخدام عامل الحذف لحذفها.
undef ليس ثابتًا ويمكن ضبطه على قيم أخرى.
سيتم إرجاع غير محدد أيضًا عند محاولة قراءة خاصية كائن غير موجودة.
نصائح وملاحظات
نصيحة: يمكنك فقط استخدام عامل التشغيل === لاختبار ما إذا كانت القيمة غير محددة، لأن عامل التشغيل == يعتبر القيمة غير المحددة مكافئة للقيمة الخالية.
ملحوظة: null يعني عدم وجود قيمة، في حين أن غير محدد يعني متغير غير معلن، أو متغير تم الإعلان عنه ولكن ليس له قيمة معينة، أو خاصية كائن غير موجودة.
مثال
في هذا المثال، سنكتشف أن أحد المتغيرين غير معرف:
<نوع البرنامج النصي = "نص/جافا سكريبت">
فار t1 = ""
فارت2
إذا (t1===غير محدد) {document.write("t1 غير محدد")}
إذا (t2===غير محدد) {document.write("t2 غير محدد")}
</script>
الإخراج:
t2 غير محدد