امروز قصد داریم شیوه کار با کار با بولین و اعداد در اکما اسکرپیت را شرح دهیم. همراه ما باشید.
آبجکت بولین دو مقدار را نمایش می دهد: true یا false. اگر مقداری برای این آبجکت تعریف نشده باشد و یا مقدار آن 0، 0-، null ،false ،NaN،undefined یا رشته خالی بود، به طور پیش فرض مقدار آبجکت بولین برابر false خواهد بود.
در زیر نحوه ایجاد یک آبجکت بولین را آورده ایم:
var val = new Boolean(value);
در زیر پروپرتی های آبجکت های بولین را آورده ایم.
# | پروپرتی | توضیحات |
1 | Constructor | یک ارجاع به تابع بولینی که آبجکت را ایجاد کرده است را بر می گرداند. |
2 | Prototype | پروپرتی prototype اجازه می دهد که پروپرتی و متدهایی را به یک آبجکت اضافه کنید. |
متد بولین constructor() یک ارجاع به تابع بولینی که یک نمونه از prototype را ایجاد کرده، بر می گرداند. از سینتکس زیر برای ایجاد یک تابع بولین constructor استفاده کنید. این متد تابعی که این نمونه آبجکت را ایجاد کرده، بر می گرداند.
مثال
<html> <head> <title>JavaScript constructor() Method</title> </head> <body> <script type = "text/javascript"> var bool = new Boolean( ); document.write("bool.constructor() is : " + bool.constructor); </script> </body> </html>
خروجی
bool.constructor() is : function Boolean() { [native code] }
پروپرتی prototype اجازه می دهد که پروپرتی ها و متدهایی را به هر نوع آبجکتی که مایل بودید (مثل Number، Boolean، String، Date)، اضافه کنید.
نکته: prototype یک پروپرتی سراسری است که تقریباً با هر آبجکتی قابل استفاده است.
نحوه ایجاد prototype بولین:
object.prototype.name = value
مثال
مثال زیر نشان می دهد که چطور از پروپرتی prototype برای افزودن یک پروپرتی به یک آبجکت استفاده کنید.
<html> <head> <title>User-defined objects</title> <script type = "text/javascript"> function book(title, author){ this.title = title; this.author = author; } </script> </head> <body> <script type = "text/javascript"> var myBook = new book("Perl", "Tom"); book.prototype.price = null; myBook.price = 100; document.write("Book title is : " + myBook.title + "<br>"); document.write("Book author is : " + myBook.author + "<br>"); document.write("Book price is : " + myBook.price + "<br>"); </script> </body> </html>
خروجی
Book title is : Perl Book author is : Tom Book price is : 100
در جدول زیر متدهای بولین به همراه توضیحات هر کدام آمده است.
# | متد | توضیحات |
1 | toSource() | یک رشته که شامل منبع یا سورس آبجکت بولین است را بر می گرداند، شما می توانید از این رشته برای ایجاد یک آبجکت برابر، استفاده کنید |
2 | toString() | یک رشته شامل True یا False را بسته به مقدار آبجکت بر می گرداند. |
3 | valueOf() | مقدار اولیه آبجکت بولین را بر می گرداند |
متدtoSource()
این متد یک رشته شامل منبع یا سورس یک آبجکت را بر می گرداند.
نکته: این متد با هر مرورگری سازگار نیست.
سینتکس آن مطابق زیر است:
boolean.toSource(
مثال
<html> <head> <title>JavaScript toSource() Method</title> </head> <body> <script type = "text/javascript"> function book(title, publisher, price) { this.title = title; this.publisher = publisher; this.price = price; } var newBook = new book("Perl","Leo Inc",200); document.write("newBook.toSource() is : "+ newBook.toSource()); </script> </body> </html>
خروجی
({title:"Perl", publisher:"Leo Inc", price:200})
یک رشته که شامل true یا false است را بسته به مقدار یک آبجکت را بر میگرداند.
سینتکس
boolean.toString()
مثال
<html> <head> <title>JavaScript toString() Method</title> </head> <body> <script type = "text/javascript"> var flag = new Boolean(false); document.write( "flag.toString is : " + flag.toString() ); </script> </body> </html>
خروجی
flag.toString is : false
متد بولین valueOf() مقدار اولیه یک آبجکت بولین معین شده، را بر میگرداند.
سینتکس
boolean.valueOf()
مثال
<html> <head> <title>JavaScript toString() Method</title> </head> <body> <script type = "text/javascript"> var flag = new Boolean(false); document.write( "flag.valueOf is : " + flag.valueOf() ); </script> </body> </html>
خروجی
flag.valueOf is : false
اشیای Number تاریخ های عددی را به صورت اعداد صحیح و اعشاری نمایش می دهد.
به طور عادی نیازی نیست درباره اشیای Number نگران باشید، چون مرورگرها بطور خودکار رشته های عددی را به نمونه ای از کلاس Number تبدیل می کند.
سینتکس زیر یک آبجکت عددی را ایجاد می کند.
var val = new Number(number);
در قسمت number اگر شما یک آرگومان غیرعددی را قرار دهید و آن آرگومان نتواند به یک عدد تبدیل شود، یک مقدار NaN (Not-a-Number) را بر می گرداند.
# | پروپرتی | توضیحات |
1 | Number.EPSILON |
کمترین فاصله بین دو عدد قابل نمایش |
2 | Number.MAX_SAFE_INTEGER | بیشترین محدوده integer در جاوا اسکرپیت(253-1) |
3 | Number.MAX_VALUE | بزرگترین عدد مثبت قابل نمایش |
4 | MIN_SAFE_INTEGER |
کمترین محدوده integer در جاوا اسکرپیت (253-1)- |
5 | Number.MIN_VALUE |
کمترین عدد مثبت قابل نمایش که آن عدد به صفر نزدیک می شود، اما هیچگاه برابر خود صفر نمی شود. |
6 | Number.Nan | به طور خاص مقدار not-a-number را تولید می کند. |
7 | Number.NEGATIVE_INFINITY | یک مقدار منفی بی نهایت را ایجاد می کند و یک سرریز بافر را بر می گرداند. |
8 | Number.POSITIVE_INFINITY | یک مقدار مثبت بی نهایت را ایجاد می کند و یک سرریز بافر را بر می گرداند. |
مثال-Number.EPSILON
var interval = Number.EPSILON console.log(interval)
خروجی
2.220446049250313e-16
مثال-Number.MAX_SAFE_INTERGER
var interval = Number.MAX_SAFE_INTEGER console.log(interval)
خروجی
9007199254740991
# | متد | توضیحات |
1 | Number.isNaN() | بررسی می کند که آیا مقدار پاس داده شده به آن NaN است یا نه. |
2 | Number.isFinite() | بررسی می کند که آیا مقدار پاس داده شده به آن عدد متناهی است یا نه. |
3 | Number.isInteger() | بررسی می کند که آیا مقدار پاس داده شده به آن یک عدد صحیح است یا نه. |
4 | Number.isSafeInteger() | بررسی می کند که آیا مقدار پاس داده شده به آن در محدوده اعداد صحیح(integer) قرار دارد یا نه.
اعداد بین (253-1) و (253-1)- |
5 | Number.parseFloat() | یک مقدار رشته ای را تجزیه کرده و یک عدد اعشاری را بر می گرداند.
|
6 | Number.parseInt() | یک مقدار رشته ای را تجزیه کرده و یک عدد صحیح را بر می گرداند.
|
شی Number تنها شامل متدهای پیش فرض است که بخشی از تعریف هر شی است.
# | متد | توضیحات |
1 | toExponential() | یک رشته شامل اعداد نمایی را بر می گرداند. |
2 | toFixed() | یک رشته شامل اعداد با ممیز ثابت را بر می گرداند. |
3 | toLocaleString() | یک رشته که شامل اعداد حساس به زبان محلی است را بر می گرداند. |
4 | toPrecision() | یک رشته شامل یک عدد ممیز ثابت با دقت مشخص یا اعداد نمایی است، را بر می گرداند. |
5 | toString() | یک عدد را به مقدار رشته ای تبدیل میکند. |
6 | valueOf() | مقدار اولیه یک آبجکت معین را بر می گرداند. |
قبل از اکما اسکریپت 6 شما هنگامی که یک عدد باینری یا اکتال داشتید، باید آن را به متد parseInt() پاس می دادید تا بعد بتوانید از آن عدد استفاده کنید. در ES6 می توانید از پیشوند های 0o و 0b برای نمایش اعداد باینری و اکتال استفاده کنید. همچنین برای نمایش اعداد هگزادسیمال از پیشوند 0x استفاده کنید.
پیشوندها می توانند با حروف کوچک یا بزرگ نوشته شوند.اگر چه پیشنهاد می کنیم که با حروف بزرگ بنویسید.
مثال- نمایش باینری
console.log(0b001) console.log(0b010) console.log(0b011) console.log(0b100)
خروجی
1 2 3 4
مثال- نمایش اکتال
console.log(0x010) console.log(0x100)
خروجی
16 256
مثال- نمایش هگزادسیمال
console.log(0x010) console.log(0x100)
خروجی
16 256
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.