لقد قمت مؤخرًا بإنشاء مشروع يتضمن معالجة JS لتحديد أنواع البيانات ، والبحث عن المعلومات ذات الصلة عبر الإنترنت ، واختبرت شخصياً الحكم على أنواع البيانات المختلفة ، وهو أمر آمن تمامًا. أدناه ، سيشارك المحرر المحتوى المحدد معك للرجوع إليه!
1. أنواع البيانات في JS
1. النوع العددي (رقم): يتضمن أعداد صحيحة وأرقام نقاط عائمة.
2. منطقية
3. نوع السلسلة
4. كائن
5.Ray
6. القيمة الملازمة (خالية)
7. غير محدد
2. تحديد نوع البيانات للمتغير
1. نوع العدد (رقم)
أساليب الحكم الأكثر استخدامًا هي:
الدالة isNumber (val) {return typeof val === 'number' ؛}لكن بعض المواقف لا تعمل ، مثل:
var a ؛ Alert (isNumber (parseint (a))) ؛
ما يظهر هنا صحيح ، كما هو موضح في الشكل أدناه:
ولكن في الواقع ، فإن المتغير A هو نان ، والذي لا يمكن استخدامه للعمليات العددية.
لذلك يمكن تعديل الوظيفة أعلاه إلى:
الدالة isNumber (val) {return typeof val === 'number' && isfinite (val) ؛}بعد التعديل ، ظهرت كاذبة ، كما هو موضح في الشكل أدناه:
بالمناسبة ، يتم استخدام وظيفة javaScript isfinite () للتحقق مما إذا كانت معلماتها غير محدودة. إذا كان الرقم هو رقم محدود (أو يمكن تحويله إلى رقم محدود) ، فسيتم إرجاعه بشكل صحيح. خلاف ذلك ، إذا كان الرقم NAN (غير الرقم) ، أو رقم Infinity إيجابي أو سلبي ، يتم إرجاع خطأ.
2. منطقية
إن حكم النوع المنطقي بسيط نسبيًا ، ويمكنك استخدام الطريقة التالية لإصدار الأحكام:
/*الحكم على ما إذا كان المتغير Val هو نوع منطقي*/دالة IsbooleAntype (Val) {return typeof val === "Boolean" ؛}رمز الاختبار:
<script type = "text/javaScript">/*judge ما إذا كان المتغير val هو نوع منطقي*/وظيفة isBooleAntype (val) {return typeof val === "boolean" ؛ "+Isbooleantype (b)) ؛ </script>نتائج التشغيل:
3. سلسلة
إن حكم نوع السلسلة بسيط نسبيًا ، ويمكنك استخدام الطريقة التالية لإصدار الأحكام:
/*الحكم على ما إذا كان المتغير هو نوع سلسلة*/وظيفة isStringType (val) {return typeof val === "string" ؛}رمز الاختبار:
<script type = "text/javaScript">/*ادكى على ما إذا كان المتغير هو نوع سلسلة*/وظيفة isStringTyPe (val) {return typeof val === "string" ؛} var a ؛ var s = "strtype" "+isStringType (s)) ؛ </script>نتائج التشغيل:
4. غير محدد
الأحكام غير المحددة بسيطة نسبيًا ، ويمكن الحكم عليها بالطريقة التالية:
/*الحكم على ما إذا كان المتغير غير محدد*/وظيفة isundefined (val) {return typeof val === "undefined" ؛}رمز الاختبار:
<script type = "text/javaScript"> var a ؛ // a is undefinedvar s = "strtype" ؛/*judge ما إذا كان المتغير غير محدد*/function isundefined (val) {return typeof val === "underied" ؛ "+isundefined (s)) ؛ </script>نتائج التشغيل:
5. كائن
نظرًا لأنه عندما يكون المتغير فارغًا ، فإن TypeOF سيعود أيضًا إلى كائن ، لا يمكن الحكم على الكائن مباشرة باستخدام TypeOF.
يجب أن يكون هكذا:
دالة ISOBJ (str) {if (str === null || typeof str === 'undefined') {return false ؛} return typeof str === 'object' ؛}رمز الاختبار:
<script type = "text/javaScript">/*ugner ما إذا كان المتغير هو نوع الكائن*/الوظيفة isObj (str) {if (str === null || typeof str ==== 'undefined') {return false ؛ null ، typeof b === 'object' '' نتيجة الحكم هي: "+(typeof b === 'object')) ؛ تنبيه (" نتيجة الحكم من المتغير A هو نوع الكائن: "+ISOBJ (a)) "+ISOBJ (c)) ؛ // falsealert (" نتيجة الحكم للمتغير d هي نوع الكائن: "+ISOBJ (d)) ؛ // truealert (" نتيجة الحكم للمتغير e هو نوع الكائن: "+ISOBJ (e)) ؛ // true </script>نتائج التشغيل:
6. القيمة الملازمة (خالية)
فقط استخدم Val === NULL لتحديد القيمة الفارغة
دالة isnull (val) {return val === null ؛}رمز الاختبار:
/. "+isnull (b)) ؛ // truealert (" نتيجة الحكم للمتغير C هي نوع فارغ هي: "+isnull (c)) ؛ // falseنتائج التشغيل:
7.array
لا يمكن الحكم على نوع الصفيف بواسطة TypeOF. لأنه عندما يكون المتغير نوعًا صفيفًا ، سيقوم TypeOF بإرجاع الكائن.
فيما يلي طريقتان لتحديد نوع الصفيف:
/*الحكم على ما إذا كان المتغير ARR هو طريقة صفيف 1*/دالة isarray (arr) {return object.prototype.toString.apply (arr) === ' === صفيف ؛}رمز الاختبار:
<script type = "text/javaScript">/*upply ما إذا كان المتغير ARR هو طريقة صفيف 1*/وظيفة isarray (arr) {return object.prototype.toString.apply (arr) ==== ' 'undefined') {return false ؛} return arr.constructor === array ؛} // اختبار المتغير var a = null ؛ var b = "" var c ؛ var arr = [،،] ؛ var arr = new array () ؛ 'Object')) ؛ document.write ("<br/>") ؛ document.write ("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- T.write ("<br/>") ؛ document.write ("نتيجة الحكم بأن المتغير A هو نوع صفيف هو:"+isarray (a)) ؛ document.write ("<br/>") نتيجة الحكم من النوع هي: "+isarray (c)) ؛ document.write (" <br/>) العنصر ("<br/>") ؛ document.write ("-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ent.write ("نتيجة الحكم للمتغير A هي نوع صفيف هي:"+isarray (a)) ؛ document.write ("<br/>") ؛ document.write ("النتيجة الحكم للمتغير B هي نوع صفيف هو: document.write ("<br/>") ؛ document.write ("نتيجة الحكم بأن المتغير ARR هو نوع صفيف هو:"+isarray (arr)) ؛ document.write ("<br/>)نتائج التشغيل:
المحتوى أعلاه هو ملخص نقاط المعرفة JavaScript (VI) لأنواع البيانات المتغيرة JavaScript. آمل أن يكون ذلك مفيدًا للجميع. إذا كنت تريد معرفة المزيد ، فيرجى الانتباه إلى موقع Wulin.com!