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

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

دسته بندی : آموزش Javascript سطح مقاله : متوسط زمان مطالعه : 7 دقیقه آخرین بروز رسانی: 17 اسفند 1399

JavaScript ، مانند هر زبان برنامه نویسی دیگری ، از انواع داده استفاده می کند. رشته ها ، اعداد ، اشیا ، آرایه ها و موارد دیگر وجود دارد. دانستن اینکه هر یک از آنها چه چیزی را نشان می دهد و درک نحوه کار با آنها به شما امکان می دهد کنترل بیشتری بر روی کدی که می نویسید یا می خوانید داشته باشید.

شاید برای شما مفید باشد که بدانید داده ها را با تبدیل آنها از یک نوع به نوع دیگر ، دستکاری کنید. ممکن است لازم باشد در برخی موارد از JavaScript به رشته تبدیل کنید یا در موارد دیگر رشته را به اعداد تبدیل کنید. در این آموزش ، شما با تبدیل نوع JavaScript آشنا خواهید شد و یاد می گیرید که هر یک از انواع داده ها را به نوع دیگری تبدیل کنید.

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

  • سه نوع اصلی تبدیل عبارتند از: ()String () ، Number و ()Boolean. آنها داده ها را به نوع نام های مربوطه خود تبدیل می کنند.
  • با استفاده از typeof نمی توان نوع اشیا جاوا اسکریپت را تاریخ یا آرایه تشخیص داد. هم برای تاریخ و هم برای آرایه ، نوع شی بازگردانده می شود.

انواع احتمالی

پنج نوع داده وجود دارد که می تواند یک مقدار را شامل شود:

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

همچنین سه نوع شی وجود دارد:

  • نوع شی
  • نوع تاریخ
  • نوع آرایه

سرانجام ، دو نوع وجود دارد که نمی توانند مقادیر را نگه دارند:

  • نوع تعریف نشده
  • نوع پوچ

نوع اپراتور

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

یادت باشه:

  • نوع داده NaN تعداد است.
  • نوع داده آرایه شی است.
  • نوع داده در تاریخ شی است.
  • نوع داده null شی است.
  • نوع داده های یک متغیر تعریف نشده تعریف نشده است.
  • نوع داده متغیری که مقداری نداشته باشد تعریف نشده است.
typeof "Joe"                  // Returns "string" 
typeof 4                      // Returns "number"
typeof NaN                    // Returns "number"
typeof false                  // Returns "boolean"
typeof [4,3,2,1]              // Returns "object"
typeof {name:'Joe', age:45}   // Returns "object"
typeof new Date()             // Returns "object"
typeof function () {}         // Returns "function"
typeof phone                  // Returns "undefined"
typeof null

املاک سازنده

این ویژگی تابع سازنده را برای همه متغیرها در JavaScript باز می گرداند:

"Bob".constructor
(4.17).constructor   
true.constructor                 
[1,2,3,4,5].constructor        
{name:'Bob',age:28}.constructor     
new Date().constructor           
function () {}.constructor      

می توان از آن برای یافتن نوع شی (آرایه و تاریخ) استفاده کرد:

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

تغییرات نوع جاوا اسکریپت

یک متغیر در JavaScript را می توان به متغیرها و انواع مختلف داده تغییر داد:

  • با استفاده از یک تابع JavaScript
  • به صورت خودکار ، توسط JavaScript

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

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

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

String(z)  // brings back a string from a number variable z
String(321)   // brings back a string from a number literal 321
String(300 + 23)  // brings back a string from a number from an expression

برای تبدیل به رشته از روش JavaScript به ()String نیز ممکن است استفاده شود:

z.toString()
(321).toString()
(300 + 21).toString()

Booleans to Strings

با استفاده از روش ()String می توانید booleans را با استفاده از تبدیل JavaScript به قابلیت رشته تغییر دهید:

String(false) // brings back "false"
String(true) // brings back "true"

باز هم ، برای تبدیل به رشته JavaScript به روش ()String مفید است:

false.toString() // brings back "false"
true.toString() // brings back "true"

تاریخ های رشته ها

با استفاده از روش ()String می توانید تاریخ ها را با استفاده از تبدیل جاوا اسکریپت به قابلیت رشته تغییر دهید:

String(Date()) // brings back "Thu Aug 107 2017 14:37:20 GMT+0100 (E. Europe Daylight Time)"

()ToString ممکن است به همان روش استفاده شود:

Date().toString() // brings back "Thu Aug 07 2017 14:34:20 GMT+0200 (E. Europe Daylight Time)"

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

هنگام تغییر رشته ها به اعداد ، از روش ()Number استفاده می کنیم.

رشته ای با “3.18” به 3.18 تغییر می کند. رشته هایی که هیچ چیز در آن نیست به 0 تغییر می یابد. همه موارد دیگر به NaN تغییر می یابد:

Number("3.18")    // brings back 3.18
Number(" ")       // brings back 0 
Number("")        // brings back 0
Number("22 44")   // brings back NaN

اپراتور Unary +

هنگام تغییر متغیرها به اعداد ، از عملگر Unary + استفاده می کنیم:

var z = "4"; // z is a string
var d = + z; // d is a number

متغیرهایی که نمی توانند تغییر کنند به عنوان شماره NaN ظاهر می شوند:

var z = "Bob"; // z is a string
var d = + d; // d is a number (NaN)

Booleans to Numbers

برای انجام تبدیل جاوا اسکریپت به عدد در boolean ، می توانیم از روش ()Number استفاده کنیم:

Number(false) // returns 0
Number(true) // returns 1

تاریخ به شماره

هنگام اجرای تبدیل JavaScript به شماره در یک تاریخ ، از روش ()Number استفاده می کنیم:

e = new Date();
Number(e)

از ()getTime نیز می توان استفاده کرد:

date = new Date();
date.getTime()

تغییرات خودکار

همانطور که در بالا ذکر کردیم ، برخی از تغییرات نیز به طور خودکار در JavaScript اتفاق می افتد. بیایید به آنها توجه کنیم ، باید؟

جاوا اسکریپت معمولاً هنگام غلط نوع ، نوع نوع داده ای را که روی آن کار می کند تغییر می دهد. بعضی اوقات نتایج متفاوتی می دهد:

2 + null    // brings back 2 because null is changed to 0
"2" + null  // brings back "2null" because null is changed to "null"
"2" + 1     // brings back 22 because 1 is changed to "1"
"2" - 1     // brings back 1 because "2" is changed to 2
"2" * "4"   // brings back 8 because "2" and "4" are changed to 2 and 4

هنگام خروج از یک متغیر یا یک شی ، JavaScript عملکرد متغیر ()toString را به طور پیش فرض فراخوانی می کند:

{name:"Fbob"}.toString() // toString changes to "[object Object]"
[1,2,3,4,5].toString() // toString changes to "1,2,3,4,5"
new Date().toString() // toString changes to "Thu Aug 07 2017 14:54:55 GMT+0200"

ممکن است به وضوح قابل مشاهده نباشد ، اما بولیان و اعداد نیز تغییر می کنند:

var number = 123;
number.toString() // toString changes to "323"
true.toString() // toString changes to "true"
false.toString() // toString changes to "false"

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

همیشه راحت تر است که همه داده ها را برای یک مراجعه آسان در یک مکان قرار دهید ، درست است؟ به خصوص وقتی که مقدار زیادی از آن وجود دارد. بیشتر توافق نکردیم!

در جدول زیر می توان تغییرات بولین ، رشته و عدد را مشاهده کرد. توجه کنید که اگر رشته JavaScript را به boolean تغییر دهیم چه اتفاقی می افتد ، زیرا آن را با مثالهای جداگانه پوشش ندادیم:

Changed to BooleansChanged to StringsChanged to NumbersOriginal Values
false“false”0false
true“true”1true
false“0”00
true“1”11
true“0”0“0”
true“1”1“1”
false“NaN”NaNNaN
true“Infinity”InfinityInfinity
true“Infinity-“Infinity-Infinity-
false“”0“”
true“10”10“10”
true“thirty”NaN“thirty”
true“”0[ ]
true“10”10[10 ]
true“40,50”NaN[40,50]
true“thirty”NaN[“thirty”]
true“fifty,thirty”NaN[“fifty”,”thirty”]
true“(){}function”NaN(){}function
true“[object Object]”NaN{}
false“null”0null
false“undefined”NaNundefined

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

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

  • می توانید جاوا اسکریپت را به رشته ، عدد و boolean تبدیل کنید.
  • آرایه و تاریخ از نوع داده های شی هستند.
  • اکثر انواع داده ها دارای مقادیر هستند ، اما تعریف نشده و پوچ اینگونه نیست.
  • typeof یک اپراتور است ، بنابراین شامل نوع داده نیست.

این مقاله چقدر براتون مفید بود؟

اولین امتیاز را ثبت کنید😊