جاوا اسکریپت typeof

جاوا اسکریپت typeof

在 JavaScript 中有 5 种不同的可以包含值的数据类型:

  • 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 的数据类型是数字
  • 数组的数据类型是对象
  • 日期的数据类型是对象
  • 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 عملگر به اشیاء، آرایه‌ها و null ورد "object" می‌دهد.

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()  {[native code]}
(3.14).constructor                // واپس می‌دهد function Number()  {[native code]}
false.constructor                 // واپس می‌دهد function Boolean() {[native code]}
[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]}' ملتی ہے

خود کو بچارو

آپ میٹرائیڈ آئیٹم کو 'Array' کا معاملہ بننے کا معائنہ کر سکتے ہیں، جس میں (شامل "Array" لفظ):

مثال

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

خود کو بچارو

یا سادہ تر، آپ میٹرائیڈ آئیٹم کو 'Date' کا معاملہ بننے کا معائنہ کرسکتے ہیں،آرائی کا فن:

مثال

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

خود کو بچارو

آپ میٹرائیڈ آئیٹم کو 'Date' کا معاملہ بننے کا معائنہ کر سکتے ہیں، جس میں (شامل "Date" لفظ):

مثال

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

خود کو بچارو

یا سادہ تر، آپ میٹرائیڈ آئیٹم کو 'Date' کا معاملہ بننے کا معائنہ کرسکتے ہیں،تاریخ کا فن:

مثال

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

خود کو بچارو

Undefined

جاوا اسکریپت میں، مقصد نہ رکھنے والی متغیر کا مقصد undefinedبھی ہے۔ نوعیت بھی undefined.

مثال

let car;    // مقصد undefined، نوعیت بھی undefined ہے

خود کو بچارو

اس کی مقصد کو undefined، کسی بھی متغیر کو خالی کر سکتا ہے۔ نوعیت بھی undefined.

مثال

car = undefined;    // مقصد undefined، نوعیت بھی undefined ہے

خود کو بچارو

خالی مقدار

خالی مقدار سے، undefined مربوط نہیں ہے。

خالی فہرست کا مقصد اور نوعیت دونوں موجود ہیں。

مثال

let car = "";    // مقصد ""، نوعیت بھی 'string' ہے

خود کو بچارو

Null

جاوا اسکریپت میں، null یعنی 'null' ہے، یہ نہیں موجود کچھ ہونا چاہئے。

مجبورانہ طور پر، جاوا اسکریپت میں،null اُن کی نوع کا ایک آئی‌جی (Object) ہے。

آپ اس بات کو جسٹا اسکریپٹ میں ایک بگ کے طور پر مان سکتے ہیں،typeof 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

خود کو بچارو