typeof في JavaScript

typeof في JavaScript

هناك 5 أنواع مختلفة يمكن أن تحتوي على القيم في JavaScript:

  • string
  • number
  • boolean
  • object
  • function

هناك 6 أنواع من الأجسام:

  • Object
  • Date
  • Array
  • String
  • Number
  • Boolean

و 2 أنواع بيانات لا يمكن أن تحتوي على القيم:

  • null
  • undefined

معادلة typeof

يمكنك استخدام typeof المعادلة لتحديد نوع البيانات لل متغيرات JavaScript.

مثال

typeof "Bill"                 // يعود "string"
typeof 3.14                   // يعود "number"
typeof NaN                    // يعود "number"
typeof false                  // يعود "boolean"
typeof [1,2,3,4]              // يعود "object"
typeof {name:'Bill', age:19}  // يعود "object"
typeof new Date()             // يعود "object"
typeof function () {}         // يعود "function"
typeof myCar                  // يعود "undefined" *
typeof null                   // يعود "object"

تجربة شخصية

الرجاء الانتباه:

  • نوع البيانات لـ NaN هو number
  • نوع البيانات للقائمة هو object
  • نوع البيانات للتاريخ هو object
  • نوع البيانات لـ null هو object
  • نوع البيانات للمتغير غير المحدد هو undefined *
  • نوع البيانات للمتغير غير المحدد هو undefined *

لا يمكنك استخدام typeof لتحديد ما إذا كان جسم JavaScript هو قائمة (أو تاريخ).

التاريخ الأصلي

قيمة البيانات الأصلية تشير إلى قيمة بسيطة بلا خصائص أو طرق.

typeof المعادلات يمكنها العودة إلى أحد الأنواع الأصلية التالية:

  • string
  • number
  • boolean
  • undefined

مثال

typeof "Bill"              // تعود "string"
typeof 3.14                // تعود "number"
typeof true                // تعود "boolean"
typeof false               // تعود "boolean"
typeof x                   // تعود "undefined" (إذا لم يكن لدي x أي قيمة)

تجربة شخصية

بيانات معقدة

typeof العمليات يمكنها العودة بأحد نوعي البيانات المعقدة.

  • function
  • object

typeof تعود العمليات بكائنات الجداول والجداول والجداول.

typeof العمليات لا تعود بكائنات "object" للوظائف.

مثال

typeof {name:'Bill', age:19} // تعود "object"
typeof [1,2,3,4]             // تعود "object" (ليس "array"، راجع الأمثلة أدناه)
typeof null                  // تعود "object"
typeof function myFunc(){}   // تعود "function"

تجربة شخصية

typeof تعود العمليات بكائنات الجداول. "object"، لأن الجداول في JavaScript هي كائنات.

نوع بيانات typeof

typeof العمليات ليست متغيرًا. إنه مجرد عمليات. عمليات (+ - * /) ليس لديها أي نوع بيانات.

لكن،typeof العمليات دائمًاتعود النصبما في ذلك نوع العمليات.

خصائص constructor

constructor الخصائص تعود ببناء الجسم لكل متغيرات JavaScript.

مثال

"Bill".constructor                // عودة function String()  {[أولية محلية]}
(3.14).constructor                // عودة function Number()  {[أولية محلية]}
false.constructor                 // عودة function Boolean() {[أولية محلية]}
[1,2,3,4].constructor             // يعود إلى function Array()   {[native code]}
{name:'Bill',age:19}.constructor  // يعود إلى function Object()  {[native code]}
new Date().constructor            // يعود إلى function Date()    {[native code]}
function () {}.constructor        // يعود إلى function Function(){[native code]}

تجربة شخصية

يمكنك التحقق من خاصية constructor لتحديد ما إذا كان الكائن هو مصفوفة (بما في ذلك "Array" الكلمة):

مثال

function isArray(myArray) {
  return myArray.constructor.toString().indexOf("Array") > -1;
}

تجربة شخصية

أو ببساطة، يمكنك التحقق مما إذا كان الكائن هووظيفة الحساب

مثال

function isArray(myArray) {
  return myArray.constructor === Array;
}

تجربة شخصية

يمكنك التحقق من خاصية constructor لتحديد ما إذا كان الكائن هو تاريخ (بما في ذلك "Date" الكلمة):

مثال

function isDate(myDate) {
  return myDate.constructor.toString().indexOf("Date") > -1;
}

تجربة شخصية

أو ببساطة، يمكنك التحقق مما إذا كان الكائن هووظيفة التاريخ

مثال

function isDate(myDate) {
  return myDate.constructor === Date;
}

تجربة شخصية

Undefined

في JavaScript، قيمة المتغير بدون قيمة هي undefined، النوع أيضًا undefined.

مثال

let car;    // القيمة هي undefined، النوع أيضًا undefined.

تجربة شخصية

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

مثال

car = undefined;    // القيمة هي undefined، النوع أيضًا undefined.

تجربة شخصية

القيمة الفارغة

القيمة الفارغة مع undefined غير مرتبط.

الفراغ المكون من الأحرف صحيح بالنسبة للقيمة والنوع.

مثال

let car = "";    // القيمة هي ""، النوع هو "string"

تجربة شخصية

Null

في JavaScript، null هذا هو "لا شيء". يجب أن يكون غير موجود.

لسوء الحظ، في JavaScript،null نوع البيانات هو الكائن.

يمكنك اعتبارها خطأ في JavaScripttypeof null هو عنصر. النوع يجب أن يكون null.

يمكنك تعيين العنصر إلى null لإزالة العنصر:

مثال

let person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
person = null;    // الآن القيمة null ولكن النوع لا يزال هو العنصر

تجربة شخصية

يمكنك أيضًا إزالة العنصر عن طريق تعيينه إلى undefined لإزالة العنصر:

مثال

let person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
person = undefined;   // الآن القيمة والنوع غير معرفين

تجربة شخصية

الفرق بين undefined و null

undefined و null القيم متساوية ولكن الأنواع مختلفة:

typeof undefined           // undefined
typeof null                // object
null === undefined         // false
null == undefined          // true

تجربة شخصية