دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۲
  • آبان

جلسه ۳۶ : تبدیل نوع در جاوا اسکریپت

  • دسته‌بندی‌ها :
جلسه ۳۶ : تبدیل نوع در جاوا اسکریپت
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، همانطور که در بخش های ابتدایی دوره نیز اشاره کردیم جاوا اسکریپ همانند سایر زبان های برنامه نویسی شامل انواع مختلف داده هاست، که هر یک برای ذخیره و بازیابی داده های مختلف عددی و رشته ای استفاده می شود، در این بخش قصد داریم تا به مباحث تشخیص و تبدیل نوع در جاوا اسکریپت بپردازیم، در این بخش به شما خواهیم آموخت چه طور نوع داده ها را در جاوا اسکریپت بدست آورده و انواع مختلف را به یکدیگر تبدیل کنید.

      تبدیل نوع در جاوا اسکریپت

      در ابتدای بخش مروری بر انواع داده در جاوا اسکریپت خواهیم داشت، سپس به چگونگی تشخیص و تبدیل نوع در جاوا اسکریپت می پردازیم.

      انواع داده در جاوا اسکریپت

      در جاوا اسکریچت ۵ نوع داده ای مختلف وجود دارد که به شرح زیر است:

      • string
      • number
      • boolean
      • object
      • function

      همچنین سه نوع آبجکت به شرح زیر وجود دارد:

      • Object
      • Date
      • Array

      و دو نوع داده که نمی تواند شامل هیچ مقداری باشد:

      • null
      • undefined

      عملگر typeof

      شما می توانید از عملگر typeof برای پیدا کردن نوع داده ی یک متغیر در جاوا اسکریپت استفاده کنید:

      مثال : تشخیص نوع داده ی متغیرها
      خودتان امتحان کنید »

      لطفا توجه داشته باشید:

      نوع داده NaN تعداد است
      نوع داده یک آرایه شی است
      نوع داده یک تاریخ شیء است
      نوع داده null شی است
      نوع داده یک متغیر نامشخص نامشخص است *
      نوع داده متغیری که مقدار داده نشده است نیز نامشخص است *

      نکته : شما نمی توانید از typeof در آبجکت هایی که آرایه هستن استفاده کنید.

      نوع داده ی typeof

      عملگر typeof یک متغیر نیست، بلکه یک عملگر است، عملگرها ( + – * /) نمی توانند شامل نوع داده باشند.

      اما عملگر typeof  همیشه یک مقدار رشته ای را برمی گرداند.

      خصوصیت constructor

      خصوصیت constructor سازنده ی تابع را برای تمام متغیرها جاوا اسکریپت برمی گرداند.

      مثال : خصوصیت constructor
      خودتان امتحان کنید »

      شما می توانید از constructor برای پیدا کردن آبجکت در آرایه ها استفاده کنید :

      مثال : پیدا کردن آبجکت در آرایه
      خودتان امتحان کنید »

      و حتی ساده تر می توانید از constructor برای چک کردن وجود آبجکت در تابع آرایه استفاده کنید:

      مثال : چک کردن آبجکت در تابع آرایه
      خودتان امتحان کنید »

      شما می توانید خصوصیت constructor را بررسی کنید که آیا یک شی تاریخ است یا خیر:

      مثال : بررسی آبجکت تاریخ
      خودتان امتحان کنید »

      بررسی تابع date:

      مثال : بررسی تابع Date
      خودتان امتحان کنید »

      تبدیل نوع در جاوا اسکریپت

      متغیرهای جاوا اسکریپت را می توان به یک متغیر و نوع جدید تبدیل کرد:

      • با استفاده از توابع جا وااسکریپت
      • به صورت خودکار با استفاده از خود جاوا اسکریپت

      تبدیل اعداد به رشته

      متد عمومی () String می تواند اعداد را به رشته تبدیل کند.

      این می تواند بر روی هر نوع اعداد، حروف، متغیرها یا عبارات استفاده شود:

      مثال : تبدیل اعداد به رشته
      خودتان امتحان کنید »

      این متد مشابه ()toString نمی باشد.

      مثال : متد tostring
      خودتان امتحان کنید »

      در بخش متدهای عددی ، روش های بیشتری را می توانید برای تبدیل اعداد به رشته ها پیدا کنید:

      متدتوضیحات
      toExponential()یک رشته را با یک عدد گرد می کند و با استفاده از نماد نمایشی آن را می نویسد.
      toFixed()یک رشته را با یک عدد گرد و نوشته شده با یک عدد مشخص شده از عدد دومی باز می گرداند.
       toPrecision()یک رشته را با یک عدد با طول مشخص، مشخص می کند.

      تبدیل boolean به string

      متد عمومی ()String می تواند نوع boolean را به رشته (string) تبدیل کند.

      مثال : 

      عملکرد متد () toString:

      مثال : 

      تبدیل نوع Date به String

      متد عمومی ()String می تواند نوع date را به string تبدیل کند :

      مثال : 

      عملکرد متد ()toString :

      مثال : 

      البته در بخش متدهای Date شما را با متدهای بیشتری در خصوص تبدیل نوع date به string آشنا خواهیم کرد:

      متدتوضیحات
      getDate()روز را به عنوان یک شماره (۱-۳۱) دریافت برمی گرداند
      getDay().روز هفته را به عنوان یک شماره (۰-۶) دریافت برمی گرداند
      getFullYear()سال را در فرمت چهار رقمی  (yyyy) باز می گرداند
      getHours()ساعت را (۰-۲۳) بر می گرداند.
      getMilliseconds()میلی ثانیه ها (۰-۹۹۹) را برمی گرداند.
      getMinutes()دقیقه ها (۰-۵۹) را برمی گرداند.
      getMonth()ماه (۰-۱۱) را برمی گرداند.
      getSeconds()ثانیه ها (۰-۵۹) را برمی گرداند.
      getTime()زمان را (از تاریخ January 1, 1970) برمی گرداند.

      تبدیل رشته (string) به عدد (number)

      متد عمومی ()Number می تواند رشته ها را به اعداد تبدیل کند.

      رشته هایی که شامل اعداد هستند (مانند “۳٫۱۴”) به اعداد تبدیل می شوند (مانند ۳٫۱۴ )

      رشته های خالی نیز به ۰ تبدیل می شود.

      و هر چیزی غیر از این ها به NaN (عدد نیست) تبدیل می شود:

      مثال : 

      البته در بخش متدهای عددی با متدهای بیشتری برای تبدیل رشته به اعداد آشنا خواهید شد:

      MethodDescription
      parseFloat()یک رشته را تحلیل کرده و یک عدد اعشاری به برمی گرداند.
      parseInt()یک رشته را تحلیل کرده و یک عدد صحیح را باز می گرداند.

      عملگر یکانی +

      از عملگر می توان برای تبدیل متغیر به یک عدد استفاده کرد.

      مثال : تبدیل متغیر به عدد
      خودتان امتحان کنید »

      اگر متغیر نتواند به عدد تبدیل شود، حتما مقدار عددی ندارد، در این صورت خروجی NaN خواهد بود :

      مثال : خروجی NaN
      خودتان امتحان کنید »

      تبدیل boolean به عدد

      متد عمومی ()Number همچنین می تواند نوع boolean را به اعداد تبدیل کند.

      مثال : 

      تبدیل date (تاریخ) به اعداد

      متد عمومی ()Number می تواند برای تبدیل date به اعداد استفاده شود.

      عملکرد متد ()getTime:

      مثال : 

      تبدیل نوع خودکار

      هنگامی که جاوا اسکریپت تلاش می کند با نوع داده اشتباه کار کند، سعی خواهد کرد مقدار را به یک نوع “true” تبدیل کند.

      نتیجه همیشه چیزی نیست که انتظار دارید:

      مثال : تبدیل نوع خودکار
      خودتان امتحان کنید »

      تبدیل نوع خودکار رشته

      زمانیکه شما سعی می کنید که یک آبجکت یا متغیر را در خروجی دریافت کنید، جاوا اسکریپت با فراخوانی متد ()toString آن را به یک رشته تبدیل خواهد کرد.

      مثال : 

      اعداد و نوع boolean هم به همین شیوه تبدیل خواهند شد، اما این تغییر خیلی به چشم نمی آید :

      مثال : 

      جدول تبدیل نوع جاوا اسکریپت

      مقدار اصلیتبدیل شده به عددتبدیل شده به رشتهتبدیل شده به Boolean
      false۰“false”false
      true۱“true”true
      ۰۰“۰”false
      ۱۱“۱”true
      “۰”۰“۰”true
      “۰۰۰”۰“۰۰۰”true
      “۱”۱“۱”true
      NaNNaN“NaN”false
      InfinityInfinity“Infinity”true
      -Infinity-Infinity“-Infinity”true
      “”۰“”false
      “۲۰”۲۰“۲۰”true
      “twenty”NaN“twenty”true
      [ ]۰“”true
      [۲۰]۲۰“۲۰”true
      [۱۰,۲۰]NaN“۱۰,۲۰”true
      [“twenty”]NaN“twenty”true
      [“ten”,”twenty”]NaN“ten,twenty”true
      function(){}NaN“function(){}”true
      { }NaN“[object Object]”true
      null۰“null”false
      undefinedNaN“undefined”false

      در جدول فوق، مقادیر داخل نقل قول (” “) رشته محسوب می شوند.

      مقادیر قرمز رنگ نشان دهنده ی مقادیری است که برخی برنامه نویسان ممکن است، انتظار نداشته باشند.

      مثال جدول فوق :

      مثال : مثال جدول فوق
      خودتان امتحان کنید »

      کلام آخر

      در این بخش شما را با هر یک از نمونه های تبدیل نوع در جاوا اسکریپت آشنا کردیم، البته در بخش های آتی برخی از تبدیلات نوع که در این بخش به آن اشاره شد را به طور کامل تر بررسی خواهیم کرد.

      QR:  جلسه ۳۶ : تبدیل نوع در جاوا اسکریپت
      به اشتراک بگذارید