شی ( History ) در جاوا اسکریپت :
شی History به طور اتوماتیک با باز شدن یک صفحه
، توسط موتور جاوا اسکریپت مرورگر ( Java
Script runtime engine ) ایجاد می
شود . این شی حاوی اطلاعاتی درباره URL هایی که کاربر توسط مرورگر مشاهده
کرده است ، می باشد . به عبارت دیگر آدرس صفحاتی که کاربر توسط مرورگر مشاهده می
کند ، همانند یک آرایه در شی History ذخیره می شود .
این اطلاعات
درباره صفحه قبلی و یا صفحات قبلی مشاهده شده ، صفحه بعدی یا صفحات بعدی مشاهده
شده ( التبه در صورتی که کاربر از مسیر رفته به عقب بر گشته باشد ) می باشد . از این
شی برای دسترسی به صفحات قبلی و یا بعدی مرور شده استفاده می شود .
این شی یکی از
زیر مجموعه های شی window است و باید به شکل کلی زیر به کار
رود . البته بدون به کار بردن واژه window ، قابلیت دسترسی مستقیم به شی نیز وجود دارد :
Syntax |
window.history.نام خاصیت |
در ادامه به معرفی و تشریح خواص و رویدادهای مهم و پر کاربرد این شی در Java Script می پردازم .
خواص مهم شی History
در لیست زیر تنها خاصیت شی History قرار دارد . برای دریافت اطلاعات بیشتر و مثال های عملی بر روی نام آنها کلیک کنید :
نام خاصیت |
شرح |
length |
این خاصیت تعداد صفحاتی که URL و مشخصات آنها در شی History ذخیره شده است را مشخص می کند . |
در لیست زیر رویدادهای شی History قرار دارد . برای دریافت اطلاعات بیشتر و مثال های عملی بر روی نام آنها کلیک کنید :
نام رویداد |
کاربرد |
back ( ) |
این متد صفحه قبلی مشاهده شده که آدرس آن در شی History ذخیره شده ، را باز می کند . |
forward ( ) |
این متد صفحه بعدی مشاهده شده که آدرس آن در شی History ذخیره شده ، را باز می کند . |
go ( ) |
این متد صفحه ای که شماره اندیس یا URL آن در پرانتز جلوی آن تعیین شده را باز می کند . |
این خاصیت ، تعداد صفحاتی که آدرس URL آنها در
شی History ذخیره
شده است را بر می گرداند .
هنگامی که یک
پنجره را باز می کنید ، مقدار این خاصیت 0 است ، یعنی مقدار آن از صفر شروع می شود
. با حرکت در بین صفحات ، به ازای هر صفحه جدید باز شده ، یک واحد به این خاصیت
اضافه می شود .
همانطور که در
بخش معرفی شی History گفتم ،
آدرس صفحاتی که توسط مرورگر مشاهده می کنید ، به صورت یک آرایه در شی History ذخیره می
شود . به عبارت دیگر می توان گفت اندازه این خاصیت برابر با اعضا آرایه فوق است .
شکل کلی استفاده از این خاصیت به صورت زیر است :
Syntax |
history.length |
نکته 1 : خروجی این خاصیت یک مقدار عددی ( Integer ) است .
نکته 2 : مقدار
خاصیت length در
مرورگر Firefox از 1 شروع می شود .
مثال 1 : در مثال زیر با استفاده از خاصیت length ، تعداد صفحاتی که آدرس ( URL ) آنها در شی History مرورگر شما قرار دارد را در خروجی نشان داده ایم .
Example |
|
<script
type ="text/javascript"> |
کد |
این متد ، صفحه قبلی مشاهده شده در
مرورگر را باز می کند . آدرس ( URL ) این صفحه در عنصر قبلی ذخیره شده در
شی History قرار
دارد .
عملکرد این متد
همانند این است که دکمه back مرورگر را کلیک کرده و یا متد ( ) go شی History را با مقدار 1- اجرا کنید .
شکل کلی استفاده از این متد به صورت زیر است :
Syntax |
history.back ( ) |
مثال 1 : در مثال زیر از متد back در تابع backward استفاده کرده ایم . این تابع با کلیک بر روی دکمه بازگشت به صفحه قبلی فراخوانی شده و مرورگر را به صفحه قبلی مشاهده شده می برد . برای رفتن به صفحه قبل بر روی دکمه فرمان بازگشت به صفحه قبلی در قسمت خروجی کلیک کنید :
Example |
|
<script
type = " text/javascript " > |
کد |
این متد ، صفحه بعدی مشاهده شده در
مرورگر را باز می کند . آدرس ( URL ) این صفحه در عنصر بعدی ذخیره شده در
شی History قرار
دارد . البته این متد زمانی اجرا می شود که کاربر از مسیر رفته به عقب برگشته باشد
. به عبارت دیگر آدرس صفحه ای در عنصر بعدی حافظه شی History ذخیره شده باشد . در غیر این صورت
نیز با فراخوانی این متد خطایی رخ نداده و مرورگر در همان صفحه باقی می ماند .
عملکرد این متد
همانند این است که کاربر دکمه forward مرورگر را کلیک کرده و یا متد go( ) شی History را با مقدار 1+ اجرا کنید .
شکل کلی استفاده از این متد به صورت زیر است :
Syntax |
history.forward ( ) |
این متد ، صفحه قبلی مشاهده شده
در مرورگر را باز می کند . آدرس ( URL ) این صفحه
در عنصر قبلی ذخیره شده در شی History قرار دارد . شکل کلی استفاده از این متد به صورت زیر است :
مثال 1 : در مثال زیر از متد back در تابع backward استفاده کرده ایم . این تابع با کلیک بر روی دکمه بازگشت به صفحه قبلی فراخوانی شده و مرورگر را به صفحه قبلی مشاهده شده می برد . برای رفتن به صفحه قبل بر روی دکمه فرمان بازگشت به صفحه قبلی در قسمت خروجی کلیک کنید
متد ( ) forward شی History : این متد ، صفحه بعدی مشاهده شده
در مرورگر را باز می کند . آدرس ( URL ) این صفحه
در عنصر بعدی ذخیره شده در شی History قرار دارد . البته این متد زمانی اجرا می شود که کاربر از مسیر
رفته به عقب برگشته باشد . به عبارت دیگر آدرس صفحه ای در عنصر بعدی حافظه شی History ذخیره شده
باشد . در غیر این صورت نیز با فراخوانی این متد خطایی رخ نداده و مرورگر در
همان صفحه باقی می ماند . شکل کلی استفاده از این متد به صورت زیر است :
مثال 1 : در مثال زیر از متد forward در تابع fwd استفاده کرده ایم . این تابع با کلیک بر روی دکمه در شی History رفتن به صفحه بعدی فراخوانی شده و مرورگر را به صفحه بعدی مشاهده شده می برد . برای رفتن به صفحه بعد بر روی دکمه فرمان رفتن به صفحه بعدی در قسمت خروجی کلیک کنید :
این متد یک صفحه که در لیست صفحات
شی History مرورگر
ذخیره شده است را باز می کند . شکل کلی استفاده از این متد به صورت زیر است :
راهنمایی به کار بردن پارمتر : شما می توانید شماره صفحه مورد نظر خود در لیست صفحات شی History و یا آدرس دقیق آن را به این شی توسط پارامتر ارسال کنید . در مثال های زیر استفاده از هر دو حالت این پارامتر را به شما نمایش می دهیم . اما معنای به کار بردن اعداد توسط این پارامتر به صورت زیر است :
نکته مهم : در صورتی که صفحه تعیین شده در متد go( ) ، قبلا در پنجره جاری مرورگر باز و مشاهده نشده باشد و به عبارت دیگر آن صفحه در شی History مرورگر وجود نداشته باشد ، در هنگام اجرای این متد خطایی رخ نمی دهد و مرورگر در صفحه جاری باقی می ماند مثال 1 : در مثال زیر متد go( ) شی History را در تابع PrPage به کار برده ایم . با اجرای این متد ، مرورگر به صفحه قبلی مشاهده شده می رود .:
مثال 2 : در مثال زیر متد go( ) شی History را در تابع UrlDefine به کار برده ایم . در این مثال آدرس صفحه ای که می خواهیم مرورگر آن را باز کند را به صورت کامل در داخل پرانتز جلوی متد go() توسط پارامتر مربوط قرار داده ایم . با اجرای این متد ، مرورگر صفحه تعیین شده را در صورتی که شما آن را قبلا در همین پنجره مشاهده کرده باشید ، باز می کند .
|
شی window بالاترین شی در رده بندی عناصر
صفحات HTML در مدل DOM است . هر
پنجره مرورگر در واقع یک نسخه از شی window است . این شی به ازای هر نمونه از
تگ های < body > یا < frameset > ساخته می
شود .
در لیست زیر
مجموعه خواص و رویدادهای مهم و پرکاربرد شی window آمده است . برای دریافت اطلاعات
بیشتر راجع به هر کدام بر روی نام آن کلیک کنید :
خواص شی window :
نام خاصیت |
شرح |
closed |
مشخص می کند که آیا پنجره مورد نظر بسته است یا خیر . |
defaultStatus |
این خاصیت برای تعیین متن نمایش داده شده در نوار statusbar پنجره به کار می رود . |
length |
این خاصیت تعداد قاب ها موجود در پنجره را بر می گرداند . |
name |
این خاصیت برای تعیین یک نام برای پنجره مورد نظر استفاده می شود . |
opener |
این خاصیت به پنجره ای که باعث باز شدن پنجره جاری شده است ، اشاره می کند . |
self |
این خاصیت برای اشاره به پنجره ای که هم اکنون در آن هستیم به کار می رود . |
status |
این خاصیت برای تعیین متن نمایش داده شده در نوار statsbar به کار می رود . |
top |
این خاصیت به پنجره مادر پنجره جاری اشاره می کند . |
خاصیت closed :
این خاصیت یک مقدار boolen را بر می
گرداند که مشخص می کند آیا پنجره مورد نظر بسته شده است یا خیر .
در صورتی که
پنجره مورد نظر بسته باشد ، پاسخ False و در صورتی که هنوز بتسه نشده باشد
، جواب True است .
Syntax |
window.closed
|
مثال : در مثال زیر وضعیت پنجره جاری که
درون آن هستیم را توسط این خاصیت بررسی کرده ایم . از آنجا که این پنجره هنوز بسته
نشده است ، مقدار بازگشتی False است .
نکته : در مثال
زیر از خاصیت self نیز به
همراه خاصیت closed استفاده
کرده ایم . این خاصیت به پنجره جاری که درون آن هستیم ، اشاره می کند . در ادامه
به معرفی این خاصیت خواهیم پرداخت :
Example |
|
<script
type ="text/javascript"> |
کد |
مثال : در مثال زیر ابتدا توسط متد openبرای
دریافت اطلاعات راجع به متد open به بخش متد open در شی window بروید یک پنجره جدید را ایجاد می کنیم . برای
ایجاد پنجره جدید باید بر روی دکمه فرمان open window کلیک نمایید . سپس توسط دکمه فرمان get status با
فراخوانی تابع get_status به بررسی
باز یا بسته بودن پنجره جدید باز شده می پردازیم . برای مشاهده کاربرد این خاصیت
ابتدا پنجره جدید را باز کرده و سپس در هر دو وضعیت باز و یا بسته بودن آن پنجره
دکمه فرمان get status را فشار
داده و به خروجی مثال دقت کنید :
نکته مهم : همانطور
که می دانید در یک صفحه HTML یک عنصر ابتدا باید ایجاد شود ، تا
بتوان به آن عنصر دسترسی داشت . بنابراین اگر در مثال زیر قبل از اینکه دکمه open
window را زده و پنجره MyWindow را ایجاد
کنید ، بر روی دکمه get
status کلیک نمایید ،
در عمل برنامه پنجره MyWindow را نشناحته و در صفحه error رخ می
دهد . برای جلوگیری از این error با یک ساختار Try ... catch که در بخش آموزش Java Script به معرفی
آن پرداخته ایم ، اقدام به طراحی یک مکانیزم کشف خطا کرده ایم ، که در صورت زدن
دکمه open window قبل از
اینکه دکمه get status را زده
باشید ، یک پیغام هشدار به شما نمایش داده می شود :
Example |
|
<input
type="button" id="btnopen"
onclick="open_window()" value="open window" /> |
کد |
خاصیت: defaultStatus
این خاصیت متنی که در نوار Statusbar پنجره مروگر نمایش داده می شود را تعیین و نگهداری می کند . نوار Statusbar در پایین پنجره مرورگر قرار دارد و معمولا برای اطلاع رسانی عملکرد مرورگر به کاربر ، از آن استفاده می شود .
Syntax |
window.defaultStatus
= " متن مورد نظر " |
مثال : در مثال زیر با استفاده از یک دستور
ساده متن نوار Statusbar مرورگر
را در هنگام لود صفحه به مقدار مورد نظر تغییر داده ایم . به پایین پنجره مرورگر
دقت کنید . این مقدار را در آینده دوباره می توان تغییر داد :
نکته : خاصیت self در مثال
زیر به پنجره جاری که هم اکنون در آن هستیم اشاره می کند .
Example |
|
<script
type ="text/javascript"> |
کد |
مثال : در مثال زیر یک کادر متن ( TextBox ) ساده و
یک دکمه فرمان را برای تعیین متن نوار StatusBar بر روی فرم قرار داده ایم . نحوه
عمکرد این مثال به این صورت است که کاربر بایستی متنی را در درون کادر متن وارد
کرده و سپس بر روی دکمه فرمان change
defaultStatus کلیک
نماید . در این صورت تابع show_msg
اجرا شده و متن
نوار StatusBar را به
متن وارد شده از کاربر تغییر خواهد داد :
نکته : خاصیت self در مثال
زیر به پنجره جاری که هم اکنون در آن هستیم اشاره می کند .
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت: length
این خاصیت تعداد قاب ها یا frame های موجود در پنجره را نمایش می دهد . همانطور که در HTML آموختید ، قاب یا frame با تگ < iframe > ایجاد شده و هر قاب می تواند یک صفحه را در درون خود جای دهد . در حالت عادی تعداد frame های موجود در یک صفحه صفر است .
Syntax |
window.length
|
نکته : نکته جالبی که در هنگام کار با این خاصیت با آن روبرو شدم این بود که چنانچه دستور window.length را در یک script به کار ببریم ، این دستور فقط تعداد frame هایی که با تگ < iframe > قبل از آن script ایجاد شده اند را نشان می دهد و frame های بعد از خود را نمی شناسد . برای درک بهتر به دو مثال این صفحه دقت کنید . در مثال اول چون هیچ frame قبل از script آن ایجاد نشده است ، مقدار خروجی دستور window.length صفر است . اما در مثال دوم قبل از script آن یک frame ایجاد کرده ایم و می بینیم که خروجی script در این حالت 1 است .
مثال 1 : در مثال زیر با استفاده از یک script ساده ، تعداد frame های صفحه را در خروجی چاپ کرده ایم . همانطور که مبینید ، به دلیل اینکه قبل از script این مثال هیچ frame ی ایجاد نشده است ، مقدار خروجی صفر است .
Example |
|
<script
type ="text/javascript"> |
کد |
مثال 2 : در مثال زیر ابتدا یک قاب یا frame را ابتدا ایجاد کرده ایم و مجددا تعداد frame های موجود در صفحه را در خروجی چاپ کرده ایم . در این حالت می بینیم که خروجی مثال 1 است :
Example |
|
<iframe
src="Dom_Introduce.aspx" style="width: 500px; height: 200px
"></iframe> |
کد |
خاصیت name :
این خاصیت تعیین کننده و نگهدارنده نام پنجره مورد نظر است . نام یک پنجره باید از نوع متن یا text تعیین شود . نام پنجره برای دستیابی به آن پنجره در script ها استفاده می شود و ربطی به نام فایل صفحه ندارد و مقدار آن توسط برنامه نویس می تواند تعیین گردد . به صورت پیش فرض پنجره ها بدون نام هستند ، یعنی نامی برای آنها تعیین نشده است و چنانچه از سوی برنامه نویس یا طراح نیز نامی برای آن در نطر گرفته نشود ، مقدار آن خالی خواهد ماند .
Syntax |
window.name = " نام مورد نظر " ; |
مثال : در مثال زیر توسط یک اسکریپت ساده برای پنجره فعلی که در درون آن هستیم ، یک نام را تعیین کرده و سپس مقدار آن را در خروجی چاپ کرده ایم :
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت opener :
این خاصیت به پنجره ای که موجب ایجاد یا باز شدن پنجره فعلی شده است ، اشاره می کند . صفحه ای که به یک پنجره لینک داده است ، در صورت کلیک بر روی آن لینک و رفتن به صفحه جدید ، به عنوان باز کننده یا opener صفحه جدید ، محسوب می شود .
Syntax |
window.opener ; |
خاصیت self :
این خاصیت به پنجره ای که هم اکنون در آن هستیم ، اشاره می کند . این خاصیت نیز باید با یک خاصیت یا متد دوم برای آگاهی از خواص پنجره فعلی استفاده شود و به تنهایی کارایی چندانی ندارد . به کار بردن این خاصیت برای اشاره به پنجره فعلی در بیشتر موارد ضروری نیست و صرفا ذکر واژه window به تنهایی کافی است اما برای اطمینان بیشتر ، بهتر است به کار رود .
Syntax |
window.self ; |
مثال : در مثال زیر توسط یک اسکریپت ساده ابتدا به پنجره جاری که درون آن هستیم اشاره کرده و سپس آدرس کامل آن را توسط خاصیت location در خروجی چاپ کرده ایم :
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت status :
این خاصیت متنی که در نوار Statusbar پنجره
مروگر نمایش داده می شود را تعیین و نگهداری می کند . نوار Statusbar در پایین پنجره مرورگر قرار دارد و
معمولا برای اطلاع رسانی عملکرد مرورگر به کاربر ، از آن استفاده می شود .
عملکرد این
خاصیت کاملا شبیه خاصیت
defaultStatus است ، با
این تفاوت که خاصیت defaultStatus معمولا برای تعیین یک متن پیش فرض
برای statusBar به کار
می رود و در هنگام لود شدن صفحه آن متن در statusbar نمایش داده می شود . ولی متنی که
برای خاصیت status تعیین می
شود در هنگام لود صفحه و اجرای تازه آن ، در statusbar نمایش داده نمی شود .
Syntax |
window.status
= " متن مورد نظر " |
مثال : در مثال زیر یک کادر متن ( TextBox ) ساده و
یک دکمه فرمان را برای تعیین متن نوار StatusBar بر روی فرم قرار داده ایم . نحوه
عمکرد این مثال به این صورت است که کاربر بایستی متنی را در درون کادر متن وارد
کرده و سپس بر روی دکمه فرمان change
statusbar Text کلیک
نماید . در این صورت تابع show_msg
اجرا شده و متن
نوار StatusBar را به
متن وارد شده از کاربر تغییر خواهد داد :
نکته : خاصیت self در مثال
زیر به پنجره جاری که هم اکنون در آن هستیم اشاره می کند .
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت top :
این خاصیت به بالاترین پنجره یا پنجره مادر پنجره جاری ، اشاره می کند .
Syntax |
window.top |
شی Navigator ، حاوی اطلاعاتی راجع به نوع مرورگر مورد استفاده کاربر است . این
اطلاعات درباره مرورگری است ، که کاربر در آن لحظه در حال مشاهده صفحه با آن می
باشد . این شی حاوی اطلاعاتی همچون نام مرورگر مورد استفاده ، نسخه ( ورژن ) ،
زبان مورد استفاده مرورگر و ... می باشد . این اطلاعات در موارد مختلفی می تواند
مورد استفاده قرار بگیرد ، که در ادامه به معرفی آنها خواهیم پرداخت .
این شی توسط
واژه کلیدی navigator در سطح
برنامه های اسکریپتی شناخته شده و حالت کلی استفاده آن به صورت زیر است :
Syntax |
navigator.نام خاصیت |
در ادامه به معرفی و تشریح خواص و رویدادهای مهم و پر کاربرد این شی در Java Script می پردازم .
تشخیص نوع مرورگر با استفاده از شی navigator :
یکی از مهمترین کاربردهای شی navigator در جاوا
اسکریپت ، تشخیص نوع مرورگر مورد استفاده کاربر در هنگام مشاهده صفحه و نسخه (
ورژن ) آن است . این مسئله در چند مورد کاربرد دارد ، که به یکی از آنها اشاره می
کنم .
مرورگر های وب
و همچنین زبان های برنامه نویسی وب از جمله زبان اسکریپتی Java Script در طول زمان تغییرات زیادی داشته
اند و ممکن است برخی از مرورگرها و یا یک ورژن خاص آنها از برخی از دستورات Java Script به درستی
پشتیبانی نکنند . بنابراین یک طراح وب حرفه ای باید این مسئله را مد نظر داشته و
برای آن تدابیر لازم را اتخاد کند . برای مثال ممکن است یک اسکریپت در مرورگر 6 IE به صورت
صحیح اجرا شود ، ولی در مرورگر 5 IE به صورت صحیح اجرا نشود و یا مثلا
مرورگر FireFox از یکسری
دستورات خاص پشتیبانی نکند ، در حالی که همان کد در IE به صورت صحیح اجرا شود . موارد
اختلاف کارایی زیادی بین مرورگرها وجود دارد و باید همواره این نکته را به خاطر
داشته باشید .
در این صورت
باید طراح در زمان نوشتن اسکریپت هایی که امکان بروز خطا ، عدم پشتیبانی و یا
پشتیبانی نادرست در آنها وجود دارد ، دستورات متناسب با هر نوع مرورگر خاص را در
اسکریپت تعیین کرده و با استفاده از دستورات شرطی و یا دستور Switch ، پس از تشخیص
نوع مرورگر و ورژن آن ، دستورات مرتبط با آن نوع مرورگر خاص اجرا شود . در این
حالت ، سازگاری برنامه با انواع دستورات اسکریپتی تضمین می شود .
خاصیت appName و appVersion شی Navigator ، به ترتیب
نام و ورژن مرورگر مورد استفاده را مشخص می کنند . در بخش زیر خواص مهم شی Navigator را نشان
داده ایم .
خواص مهم شی navigator :
در لیست زیر خواص مهم و پر کاربرد شی Navigator قرار دارد . برای دریافت اطلاعات بیشتر و مثال های عملی بر روی نام آنها کلیک کنید :
نام خاصیت |
شرح |
appCodeName |
این خاصیت نام تعیین شده ویژه ( اسم رمز ) مربوط به نسخه مرورگر مورد استفاده را بر می گرداند . مثال : مثلا نام ویژه نسخه Mozilla ، IE7 است . |
appName |
این خاصیت نام کامل مرورگر مورد استفاده را بر می گرداند . |
appVersion |
این خاصیت پلتفرم و ورژن مرورگر مورد استفاده را بر می گرداند . |
browserLanguage |
این خاصیت زبان مرورگر مورد استفاده را بر می گرداند . |
cookieEnabled |
این خاصیت یک مقدار Boolen را بر می گرداند ، که مشخص می کند آیا مرورگر مورد استفاده از قابلیت cookie پشتیانی می کند ، یا خیر . |
cpuClass |
این خاصیت کلاس CPU مورد استفاده در کامپیوتر کاربر استفاده کننده از مرورگر را بر می گرداند . |
onLine |
این خاصیت یک مقدار Boolen را بر می گرداند ، که مشخص می کند آیا مرورگر در حالت OnLine است یا خیر . |
platform |
این خاصیت پلتفرم سیستم عامل کامپیوتر کاربر استفاده کننده از مرورگر را بر می گرداند . |
SystemLanguage |
این خاصیت زبان سیستم عامل کامپیوتر کاربر استفاده کننده از مرورگر را بر می گرداند . |
شی Navigator - خاصیت appName
این خاصیت ، نام کامل مرورگر مورد
استفاده را بر می گرداند . همانطور که در قسمت معرفی شی Navigator اشاره کردم ، مهمترین کاربرد این
خاصیت تشخیص نوع مرورگر است . تشخیص نوع مرورگر می تواند کاربردهای زیادی داشته
باشد ، که به برخی از آنها اشاره خواهم کرد .
مرورگر های وب
و همچنین زبان های برنامه نویسی وب از جمله زبان اسکریپتی Java Script در طول زمان تغییرات زیادی داشته
اند و ممکن است برخی از مرورگرها و یا یک ورژن خاص آنها از برخی از دستورات Java Script به درستی
پشتیبانی نکنند . بنابراین یک طراح وب حرفه ای باید این مسئله را مد نظر داشته و
برای آن تدابیر لازم را اتخاد کند . برای مثال ممکن است یک اسکریپت در مرورگر 6 IE به صورت
صحیح اجرا شود ، ولی در مرورگر 5 IE به صورت صحیح اجرا نشود و یا مثلا
مرورگر FireFox از یکسری دستورات خاص پشتیبانی نکند
، در حالی که همان کد در IE به صورت صحیح اجرا شود . موارد
اختلاف کارایی زیادی بین مرورگرها وجود دارد و باید همواره این نکته را به خاطر
داشته باشید .
در این صورت
باید طراح در زمان نوشتن اسکریپت هایی که امکان بروز خطا ، عدم پشتیبانی و یا
پشتیبانی نادرست در آنها وجود دارد ، دستورات متناسب با هر نوع مرورگر خاص را در
اسکریپت تعیین کرده و با استفاده از دستورات شرطی و یا دستور Switch ، پس از تشخیص
نوع مرورگر و ورژن آن ، دستورات مرتبط با آن نوع مرورگر خاص اجرا شود . در این
حالت ، سازگاری برنامه با انواع دستورات اسکریپتی تضمین می شود .
از دیگر
کاربردهای تشخیص نوع مرورگر می توان به نصب کردن برنامه های کاربردی ( Plug In ) مثل Flash Palyer یا Real Player بر روی مرورگر اشاره کرد . ممکن است
یک سایت دانلود این برنامه ها ، نسخه های متفاوتی از یک نرم افزار را برای نصب بر
روی مرورگر های مختلف تولید کرده باشد ، که برای هر مرورگر باید نسخه متناسب را
نصب کرد . در این صورت سایت مذکور می تواند با تشخیص نوع مرورگر شما ، نسخه مخصوص
به آن مرورگر را برای نصب در اختیار شما قرار بدهد ، تا در این صورت مشکل عدم
کارایی نرم افزار پیش نیاید و کاربردهای دیگر .
شکل کلی استفاده از این خاصیت به صورت زیر است :
Syntax |
navigator.appName |
نکته : خروجی این خاصیت یک مقدار رشته ای ( String ) است .
مثال 1 : در مثال زیر با استفاده از خاصیت appName ، نام کامل مرورگر مورد استفاده کاربر را نشان داده ایم . نام نمایش داده شده در خروجی بستگی به مرورگری دارد که شما هم اکنون ، در حال مشاهده صفحه با آن هستید ( به دلیل اینکه خروجی های مثال ها به صورت اکتیو توسط مرورگر تولید می شود و از قبل طراحی شده نیست ) :
Example |
|
<script
type ="text/javascript"> |
کد |
مثال 2 : کاربرد تشخیص نوع مرورگر :
در مثال زیر با
استفاده از یک اسکریپت ، ابتدا نوع مرورگر را تشخیص داده و بر حسب مقدار آن ، در
یک دستور Switch ، کد قابل اجرا بر 3 مرورگر Firefox ,
Oprer و IE را تعیین
کرده ایم . در این اسکریپت ابتدا برنامه نوع مرورگر مورد استفاده کاربر را توسط
خاصیت appName شی Navigator تشخیص
داده و بر حسب آن دستور مناسب را اجرا خواهد کرد . نتیجه خروجی بستگی به مرورگری
دارد که شما هم اکنون ، در حال مشاهده صفحه با آن هستید .
راهنمایی : خاصیت systemLanguge یکی از
خواص شی Navoigator است ، که
در ادامه آن را به طور کامل تر توضیح می دهم . این خاصیت زبان سیستم عامل کامپیوتر
اجرا کننده مرورگر را بر می گرداند . اما این خاصیت فقط توسط مرورگر Intenet Explorer پشتیبانی
شده و مرورگرهای Opera و FireFox از آن پشتیبانی نمی کنند . در
اسکریپت زیر ، هدف این است که فقط زمانی که کاربر با مرورگر IE صفحه را مشاهده می کند ، زبان سیستم
عامل را ببیند و در صورتی که از مرورگر های Firefox یا Opera استفاده می کند ، پیام عدم پشتیبانی
مرورگر از آن دستور را اعلام کند .
راهنمایی 2 : نام
مرورگر Firefox توسط
خاصیت appName واژه Netscape است .
Example |
|
<script type
="text/javascript"> |
کد |
شی Navigator - خاصیت های appCodeName و appVersion
این خاصیت نام ویژه ( نام کد )
مرورگر مورد استفاده را بر می گرداند .
نام کد ، نامی
خاص است که از سوی شرکت سازنده برای نام گذاری و مشخص کردن یک ورژن از مرورگر
تعیین می شود . این نام بیشتر یک اصطلاح عامیانه است و کاربرد خاصی ندارد . مثلا نام
ویژه مرورگرهای Mozilla , Internet Explorer است . شکل کلی استفاده از این خاصیت
به صورت زیر است :
Syntax |
navigator.appCodeName |
نکته : خروجی این خاصیت یک مقدار رشته ای ( String ) است .
مثال 1 : در مثال زیر با استفاده از خاصیت appCodeName ، نام کد مرورگر مورد استفاده کاربر را نشان داده ایم . نام نمایش داده شده در خروجی بستگی به مرورگری دارد که شما هم اکنون ، در حال مشاهده صفحه با آن هستید ( به دلیل اینکه خروجی های مثال ها به صورت اکتیو توسط مرورگر تولید می شود و از قبل طراحی شده نیست :(
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت appVersion شی Navigator ورژن مرورگر:
این خاصیت ، ورژن و پلتفرم کامل
مرورگر مورد استفاده را بر می گرداند . پلتفرم شامل اطلاعاتی از جمله سیست عامل
سازگار با مرورگر ، زبان مورد استفاده و ... می باشد .
همانند بخش قبل
که در مورد خاصیت appName ( نام مرورگر ) ، اشاره کردم ، تعیین
نوع و ورژن مرورگر می تواند کاربرهای مختلفی داشته باشد . در ادامه به 2 خاصیت این
روش اشاره می کنم .
مرورگر های وب
و همچنین زبان های برنامه نویسی وب از جمله زبان اسکریپتی Java Script در طول زمان تغییرات زیادی داشته
اند و ممکن است برخی از مرورگرها و یا یک ورژن خاص آنها از برخی از دستورات Java Script به درستی
پشتیبانی نکنند . بنابراین یک طراح وب حرفه ای باید این مسئله را مد نظر داشته و
برای آن تدابیر لازم را اتخاد کند . برای مثال ممکن است یک اسکریپت در مرورگر 6 IE به صورت
صحیح اجرا شود ، ولی در مرورگر 5 IE به صورت صحیح اجرا نشود و یا مثلا
مرورگر FireFox از یکسری
دستورات خاص پشتیبانی نکند ، در حالی که همان کد در IE به صورت صحیح اجرا شود . موارد
اختلاف کارایی زیادی بین مرورگرها وجود دارد و باید همواره این نکته را به خاطر
داشته باشید .
در این صورت
باید طراح در زمان نوشتن اسکریپت هایی که امکان بروز خطا ، عدم پشتیبانی و یا
پشتیبانی نادرست در آنها وجود دارد ، دستورات متناسب با هر نوع مرورگر خاص را در
اسکریپت تعیین کرده و با استفاده از دستورات شرطی و یا دستور Switch ، پس از تشخیص
نوع مرورگر و ورژن آن ، دستورات مرتبط با آن نوع مرورگر خاص اجرا شود . در این
حالت ، سازگاری برنامه با انواع دستورات اسکریپتی تضمین می شود .
از دیگر
کاربردهای تشخیص نوع و ورژن مرورگر می توان به نصب کردن برنامه های کاربردی ( Plug In ) مثل Flash Palyer یا Real Player بر روی
مرورگر اشاره کرد . ممکن است یک سایت دانلود این برنامه ها ، نسخه های متفاوتی از
یک نرم افزار را برای نصب بر روی مرورگر های مختلف تولید کرده باشد ، که برای هر
مرورگر باید نسخه متناسب را نصب کرد . در این صورت سایت مذکور می تواند با
تشخیص نوع مرورگر شما ، نسخه مخصوص به آن مرورگر را برای نصب در اختیار شما قرار
بدهد ، تا در این صورت مشکل عدم کارایی نرم افزار پیش نیاید و کاربردهای دیگر .
شکل کلی استفاده از این خاصیت به صورت زیر است :
Syntax |
navigator.appVersion |
نکته : خروجی این خاصیت یک مقدار رشته ای ( String ) است .
مثال 1 : در مثال زیر با استفاده از خاصیت appVersion ، ورژن کامل مرورگر مورد استفاده کاربر را نشان داده ایم . ورژن نمایش داده شده در خروجی بستگی به مرورگری دارد که شما هم اکنون ، در حال مشاهده صفحه با آن هستید ( به دلیل اینکه خروجی های مثال ها به صورت اکتیو توسط مرورگر تولید می شود و از قبل طراحی شده نیست :
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت cookieEnabled :
این خاصیت یک مقدار Boolen نوع True یا False را بر می
گرداند ، که تعیین می کند آیا قابلیت ایجاد و خواندن کوکی ( cookie ) در مرورگر شما فعال است یا خیر .
کوکی ( cookie ) متغیری
است که بر روی کامپیوتر کاربر ذخیره شده و هر بار که کاربر آن صفحه را باز کند ،
مقدار آن توسط مرورگر خوانده شده و می تواند مورد استفاده قرار بگیرد . از کوکی ها
معمولا برای ثبت و ذخیره کردن اطلاعاتی همچون نام کاربری و رمز ورود به سایت ها و
سایر اطلاعات شخصی کاربران استفاده می شود . در بخش های بعدی به طور کامل تر به
بحث درباره نحوه ایجاد و خواندن کوکی ها خواهیم پرداخت .
شکل کلی
استفاده از این خاصیت به شرح زیر است :
Syntax |
navigator.cookieEnabled |
نکته : خروجی این خاصیت یک مقدار Boolen ( نوع True یا False ) است . اگر مقدار بازگشتی True باشد ، مرورگر قابلیت ایجاد و خواندن کوکی را داراست و در صورت برگشت مقدار False ، آن قابلیت را نداشته و یا قابلیت غیر فعال شده است .
مثال 1 : در مثال زیر با استفاده از خاصیت cookiedEnabled ، فعال بودن قابلیت ایجاد و خواندن کوکی در مرورگر شما را در خروجی نمایش داده ایم . این قابلیت در مرورگر شما فعال است یا خیر ؟!
Example |
|
<script
type ="text/javascript"> |
کد |
کاربرد خاصیت cookieEnabled :
مهمترین کاربرد این خاصیت این است
که شما می توانید ابتدا چک کنید که آیا مرورگر کاربر قابلیت ایجاد و خواندن کوکی
را دارد یا خیر . سپس در صورت فعال بودن ، دستورات اسکریپتی مربوط به خواندن و
ایجاد کوکی اجرا شود . در این صورت قابلیت اطمینان و کارایی برنامه بالاتر می رود .
در مثال زیر
نحوه استفاده از این کاربرد را در عمل نشان داده ایم :
مثال 1 : در مثال زیر با استفاده از خاصیت cookiedEnabled ، ابتدا فعال ایجاد و خواندن کوکی را در مرورگر شما بررسی کرده ایم . سپس با توجه به خروجی ، در صورت فعال بودن این قابلیت یکسری دستور ایجاد کوکی اجرا خواهد شد و در صورت فعال نبودن آن پیام عدم پشتیبانی مرورگر شما از کوکی اعلام خواهد شد .
Example |
|
<script
type ="text/javascript"> |
خاصیت browserLanguage زبان مرورگر:
این خاصیت زبان پیش فرض و مورد
استفاده مرورگر را بر می گرداند .
برای مثال
مقدار این خاصیت در زبان انگلیسی ( آمریکا ( en-us و برای زبان فارسی fa است .
شکل کلی
استفاده از این خاصیت به شرح زیر است :
Syntax |
navigator.browserLanguage |
نکته : خروجی این خاصیت یک مقدار رشته ای ( String ) است .
مثال 1 : در مثال زیر با استفاده از خاصیت browserLanguage ، زبان مورد استفاده مرورگر را به کاربر نمایش داده ایم . مقدار خروجی این مثال بستگی به زبان مورد استفاده مرور گر شما دارد :
Example |
|
<script
type ="text/javascript"> |
کد |
مثال 2 : در مثال زیر با استفاده از خاصیت browserLanguage ، ابتدا زبان مورد استفاده مرورگر را تشخیص داده و بر حسب آن پیام مناسب با آن زبان را در خروجی نشان داده ایم . به این صورت که اگر زبان مورد استفاده مرور گر انگلیسی باشد ، پیام به زبان انگلیسی و در صورتی که زبان آن فارسی باشد ، پیام به زبان فارسی چاپ خواهد شد :
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت systemLanguage زبان سیستم عامل مرورگر:
این خاصیت زبان پیش فرض و مورد
استفاده سیستم عامل اجرا کننده مرورگر را بر می گرداند .
برای مثال
مقدار این خاصیت در زبان انگلیسی ( آمریکا ) en-us و برای زبان فارسی fa است .
شکل کلی
استفاده از این خاصیت به شرح زیر است :
Syntax |
navigator.systemLanguage |
نکته : خروجی این خاصیت یک مقدار رشته ای ( String ) است .
مثال 1 : در مثال زیر با استفاده از خاصیت systemLanguage ، زبان مورد استفاده سیستم عامل مرورگر را به کاربر نمایش داده ایم . مقدار خروجی این مثال بستگی به زبان مورد استفاده سیستم عامل مرور گر شما دارد :
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت onLineوضعیت مرورگر :
این خاصیت یک مقدار Boolen نوع true یا false را برمی
گرداند ، که تعیین می کند که آیا سیستم عامل مرورگر به اینترنت متصل است و یا در
حالت offline قرار
دارد .
حالت offline : مرورگرهای جدید از جمله ورژن های 4 IE و بالاتر
دارای قابلیتی به نام work
offline هستند .
بر حسب این قابلیت کاربر می تواند بدون اتصال به شبکه اینترنت ، صفحات وبی که بر
روی هارد دیسک کامپیوتر خود ذخیره کرده و یا در history مرورگر قرار دارند ، را باز و
مشاهده کرده و بین صفحات حرکت کند . در این حالت می گویند که سیستم در حالت offline قرار
دارد .
در مرورگر IE شما می
توانید از طریق منوی Standard و زیر منوی Tools ، گزینه work offline
را انتخاب کنید
تا مرورگر در حالت offline قرار بگیرد . در حالت offline چنانچه
بخواهید صفحه جدیدی که ذخیره نشده را باز کنید ، مرورگر به شما پیام می دهد که
باید به اینترنت متصل شوید .
شکل کلی
استفاده از این خاصیت به شرح زیر است :
Syntax |
navigator.onLine |
نکته : خروجی این خاصیت یک مقدار Boolen ( نوع true یا false ) است . مفهوم خروجی این خاصیت یکی از 2 حالت زیر را می تواند داشته باشد :
خروجی های خاصیت onLine |
||
خروجی |
وضعیت مرورگر |
شرح |
true |
online |
مرورگر به اینترنت متصل است . |
false |
offline |
مرورگر در حالت work offline قرار داشته و به اینترنت متصل نیست . |
مثال 1 : در مثال زیر با استفاده از خاصیت onLine ، وضعیت کاری مرورگر را به کاربر نمایش داده ایم . مقدار خروجی این مثال بستگی به وضعیت ارتباطی مرورگر مورد استفاده شما دارد :
Example |
|
<script
type ="text/javascript"> |
کد |
خاصیت cpuClass نوع CPU کامپیوتر مرورگر:
این خاصیت کلاس CPU کامپیوتر
اجرا کننده مرورگر را بر می گرداند .
شکل کلی
استفاده از این خاصیت به شرح زیر است :
Syntax |
navigator.cpuClass |
نکته : خروجی این خاصیت یک مقدار رشته ای ( String ) است .
به طور کلی 2
کلاس برای CPU ها داریم
، که خروجی این خاصیت می تواند یکی از 2 مقدار زیر باشد :
خروجی های خاصیت cpuClass |
||
خروجی |
کلاس CPU |
شرح |
x86 |
X86 |
کلاس CPU کامپیوتر اجرا کننده مرورگر X86 است . |
Alpha |
Alpha |
کلاس CPU کامپیوتر اجرا کننده مرورگر Alpha است . |
مثال 1 : در مثال زیر با استفاده از خاصیت cpuClass ، کلاس کامپیوتر شما را نمایش داده ایم . کلاس CPU کامپیوتر شما چیشت ؟؟!
Example |
|
<script
type ="text/javascript"> |
کد |
undefinedundefined |
خروجی |
شی ( RegExp ) در جاوا اسکریپت :
یکی از مهمترین نیازها و کارهایی که
ممکن است در یک صفحه وب بخواهید انجام دهید ، جستجو برای کلمات یا عبارت خاص در
متن صفحه است . فرض کنید که در یک صفحه وب می خواهید به دنبال واژه CSS بپردازید
و ببینید آیا این کلمه در صفحه وجود دارد یا خیر .
شی RegExp به طراح
امکان ایجاد کدها و ساختارهایی را برای جستجو دنبال کلمات و عبارات در صفحات وب را
می دهد .
RegExp مخفف عبارت Regular Expression است . RegExp شی است که یک الگو از کاراکترها را
تعیین می کند . یک الگو ساده می تواند فقط یک کاراکتر باشد و الگوهای پیچیده تر ،
شامل تعداد بیشتری کاراکتر هستند .
نتیجه گیری : شی RegExp برای
انجام عملیات جستجو برای کلمات و یا کاراکترهای مورد نظر در متن یک صفحه استفاده
می شود .
شکل کلی تعریف
و استفاده از یک شی RegExp در جاوا اسکریپت به صورت زیر است :
Syntax |
var patt =
new RegExp ( pattern , modifiers ) ; |
اما کد بالا چه مفهومی داشته و طرز
استفاده از آن به چه صورت است ؟
برای توضیح آن
، هر یک از کلمات موجود در کد را توضیح داده ام .
syntax توضیح هر یک از موارد |
|
توضیح |
کلمه |
یک نام دلخواه است که برای شی خودمان از نوع RegExp تعیین کرده ایم . مثل یه نام برای هر نوع متغیر دیگر . |
patt |
نام متد یا تابعی است که یک نمونه جدید از شی RegExp را ایجاد می نماید . |
new RegExp |
pattern الگو کاراکترها ، یا همان عبارتی است که در متن می خواهیم به دنبال آن بگردیم . این الگو می توانید شامل یک کاراکتر بوده و یا یک کلمه و عبارت باشد . |
pattern |
modifiers یک کاراکتر است که تعیین می کند عملیات جستجو به چه صورت انجام شود . مثلا چنانچه در این قسمت کاراکتر i را قرار دهیم ، عملیات جستجو به صورت case sensetive ( حساس به حروف بزرگ و کوچک ) انجام می شود . |
modifiers |
جند مثال برای آشنایی با کارکرد RegExp :
در این بخش سعی می کنیم با اراثه چند مثال کاربردی و کدهای آنها ، نحوه کار و استفاداه ار این شی را به شما آموزش دهیم .
مثال 1 : جستجو برای یک عبارت یک کلمه خاص در
یک متن .
در مثال اول یک
متغیر متنی به نام Str1 تعریف کرده ایم که شامل یک متن است
. به وسیله ساخت و به کار گیری یک شی RegExp در درون این متغیر به دنبال واژه Gharbnet
پرداخته ایم .
کد مثال به دنبال این کلمه در متغیر Str1 پرداخته و سپس آن را در خروجی نمایش
داده است :
< script
type="text/javascript" > |
کد |
مثال 2 : جستجو برای یک عبارت یک کلمه خاص در
یک متن و یافتن موارد تکراری.
در مثال دوم یک
متن طولانی تر را در متغیر خودمان قرار داده ایم . در این عبارت ، به دنباب کلمه is پرداخته
ایم. این کلمه در متن چند بار تکرار شده است . بنابراین با به کار بردن یک Modifire از نوع g در شی RegExp ، باعث شده
ایم تا شی نمونه های تکراری را یافته و همه آنها را نمایش دهد :
نکته مهم : توجه
داشته باشید به دلیل اینکه از Modifire نوع i در این مثال استفاده نکرده ایم ،
مورد اول تکرار Is ، به حساب
نیامده و در خروجی نمایش داده نشده است . در مثال سوم Modifire نوع i را نیز به کار برده ایم . خروجی ها
را با هم مقایسه نمایید .
< script
type="text/javascript" > |
کد |
مثال شماره 3 : استفاده همزمان از دو Modifire نوع i , g |
|
< script
type="text/javascript" > |
کد |
شی ( Math ) در جاوا اسکریپت :
از شی Math در جاوا اسکریپت برای انجام امور
ریاضی استفاده می شود . این شی شامل تعداد زیادی متد و تابع برای انجام کارهای
ریاضی می باشد . همچنین اینن شی دارای تعداد ثابت عددی مثل عدد P است که
می توانید از آنها در محاسبات خود استفاده نمایید .
شکل کلی تعریف
و استفاده از یک ثابت عددی یا متد شی Math در جاوا اسکریپت به صورت زیر است :
Syntax |
Math.نام ثابت عددی
; |
ثابت های عددی شی Math :
همانطور که اشاره شد شی Math ، دارای تعدادی ثابت عددی مثل عدد P است که از آنها می توانید در انجام امور ریاضی و محاسبات خود استفاده نمایید . در لیست زیر این ثابت ها قرار داده شده اند . برای دریافت توضیحات بیشتر و مثال های عملی بر روی نام هر ثابت کلیک نمایید :
ثابت عددی |
مقدار حدودی |
کاربرد |
E |
2.718 |
این ثابت عددی مقدار عدد حقیقی e را بر می گرداند . |
LN2 |
0.693 |
این ثابت عددی ، مقدار لگاریتم طبیعی 2 را بر می گرداند . |
LN10 |
2.302 |
این ثابت عددی ، مقدار لگاریتم طبیعی 10 را بر می گرداند . |
LOG2E |
1.442 |
این ثابت عددی ، مقدار لگاریتم عدد e را بر مبنای 2 بر می گرداند . |
LOG10E |
0.434 |
این ثابت عددی ، مقدار لگاریتم عدد e را بر مبنای 10 بر می گرداند . |
PI |
3.14 |
این ثابت عددی ، مقدار عدد P را بر می گرداند . |
متدها و تابع های عددی شی Math :
پس از آشنایی با ثابت های عددی شی Math ، در این قسمت به معرفی و توضیح تابع ها و متدهای ریاضی این شی می پردازیم که می توانید از آنها در انجام امور ریاضی و محاسبات خود استفاده نمایید . در لیست زیر این تابع ها قرار داده شده اند . برای دریافت توضیحات بیشتر و مثال های عملی بر روی نام هر تابع کلیک نمایید :
نام تابع |
کاربرد |
abs ( x ) |
این تابع قدر مطلق عددی x را بر می گرداند . |
acos ( x ) |
این تابع آرک کوسینوس عدد x را بر می گرداند . |
asin ( x ) |
این تابع آرک سینوس عدد x را بر می گرداند . |
atan ( x ) |
این تابع آرک تانژانت عدد x را بر می گرداند . |
ceil ( x ) |
این تابع عدد x رو به بالا گرد کرده و نزدیک ترین عدد صحیح بدان را بر می گرداند . |
cos(x) |
این تابع کوسینوس x را بر می گرداند . |
exp(x) |
این تابع مقدار عدد e به توان x را بر می گرداند . |
floor(x) |
این تابع عدد x را رو به پایین گرد کرده و نزدیک ترین عدد صحیح بدان را بر می گرداند . |
log(x) |
این تابع لگاریتم x را بر مبنای عدد e بر می گرداند . |
max(a,b, .. ,x,y,z) |
این تابع بزرگترین عددی را که به عنوان پارامتر به آن ارسال شده است را بر می گرداند . |
min(a,b, .. ,x,y,z) |
این تابع کوچکترین عددی را که به عنوان پارامتر به آن ارسال شده است را بر می گرداند . |
pow(a,b) |
این تابع عدد a را به توان b رسانده و نتیجه را بر می گرداند . |
random() |
این تابع یک عدد تصادفی بین 0 و 1 را انتخاب کرده و به عنوان خروجی بر می گرداند . |
round(x) |
این تابع عدد x را گرد کرده و به نزدیکترین عدد صحیح بدان تبدیل می کند . |
sin(x) |
این تابع مقدار سینوس x را بر می گرداند . |
tan(x) |
این تابع مقدار تانژانت x را بر می گرداند . |
ثابت های عددی شی : Math
همانظور که در بخش قبل گفتیم ، شی Math که برای
انجام امور ریاضی در جاوا اسکریپت استفاده می شود ، دارای چندین ثابت عددی است که
از آنها می توانید در محاسبات ریاضی و فرمول نویسی خود استفاده نمایید .
در این صفحه به
توضیح کاملتر این ثابت های عددی به همراه مثال های عملی پرداخته ایم :
ثابت عددی E :
این ثابت عددی مقدار عدد طبیعی e را بر می
گرداند . e یک عدد
حقیقی یکتاست، به طوری که مقدار مشتق تابع f ( x ) = e x
در نقطهٔ x = 0 برابر
1 می شود.
مقدار تقریبی
این عدد برابر با 2.718 است . در مثال زیر شکل استفاده از این ثابت عددی را نمایش
داده ایم :
Example |
|
<script
type = " text/javascript " > |
کد |
ثابت عددی LN2 :
این ثابت عددی مقدار لگاریتم طبیعی
عدد 2 را بر می گرداند . مقدار حدودی این ثابت عددی برابر 0.693 است .
در مثال زیر
شکل استفاده از این ثابت عددی را نمایش داده ایم :
Example |
|
<script
type = " text/javascript " > |
کد |
ثابت عددی LN10 :
این ثابت عددی مقدار لگاریتم طبیعی
عدد 10 را بر می گرداند . مقدار حدودی این ثابت عددی برابر 2.302 است .
در مثال زیر
شکل استفاده از این ثابت عددی را نمایش داده ایم :
Example |
|
<script
type = " text/javascript " > |
کد |
ثابت عددی: LOG2E
این ثابت عددی مقدار لگاریتم طبیعی
عدد e را بر
مبنای 2 بر می گرداند . مقدار حدودی این ثابت عددی برابر 1.442 است .
در مثال زیر
شکل استفاده از این ثابت عددی را نمایش داده ایم :
Example |
|
<script
type = " text/javascript " > |
کد |
ثابت عددی LOG10E :
این ثابت عددی مقدار لگاریتم طبیعی
عدد e را بر
مبنای 10 بر می گرداند . مقدار حدودی این ثابت عددی برابر 0.434 است .
در مثال زیر
شکل استفاده از این ثابت عددی را نمایش داده ایم : یم :
Example |
|
<script
type = " text/javascript " > |
کد |
ثابت عددی PI :
این ثابت عددی همان P معروف
دایره بوده و مقدار 3.14 را بر می گرداند .
در مثال زیر
شکل استفاده از این ثابت عددی را نمایش داده ایم :
Example |
|
<script
type = " text/javascript " > |
کد |
شی ( Number ) در جاوا اسکریپت :
در هنگام کار با اسکریپت های جاوا
اسکریپت ، به کار با اعداد نیاز داریم . جاوا اسکریپت بر خلاف سایر زبان های
برنامه نویسی معمول ، یک زبان با انواع داده ای خاص نیست . یعنی چه ؟
برای مثال در
زبان C ، انواع داده ای مثل integer , short , long و یا float را برای اعداد داریم . اما در جاوا
اسکریپت این گونه نیست و همه اعداد در یک فرمت 64 بیتی 8 بایت و بر مبنای 10
ذخیره می شوند .
بنابراین در
جاوا اسکریپت ، فقط یک نوع داده عددی داریم و برای تعریف آنها نیاز نیست نوع خاص
ذکر شود . اعدد می توانند به صورت صحیح و یا اعشاری و ... نوشته و استفاده شوند .
شکل کلی تعریف یک عدد در javascript به صورت زیر است :
Syntax |
var مقدار = نام متغیر
; |
تعریف اعداد بسیار بزرگ و یا بسیار کوچک :
برای تعریف اعداد بسیار بزرگ و یا بسیار کوچک ، می توانید از نشان علمی e استفاده نمایید . کاربرد آن را در مثال های زیر نمایش داده ایم :
Syntax |
var MyNum =
123e5 ; معادل :
12300000 |
شی ( Boolean ) در جاوا اسکریپت :
شی Boolean در جاوا اسکریپت ، همانند سایر زبان
های برنامه نویسی دیگر می تواند دارای یکی از مقدار صحیح true و یا غلط false باشد .
از این شی برای
تشخیص صحیح یا غلط بودن یک مقدار استفاده می شود .
شکل کلی تعریف
و استفاده از یک شی Boolean در جاوا اسکریپت به صورت زیر است :
Syntax |
var نام متغیر =
new Boolean( ) ; |
مقدار دهی اولیه یک شی Boolean :
پس از اینکه یک شی از نوع Boolean را تعریف کردید ، چنانچه مقداری را به آن نبست ندهید ، به صورت پیش فرض دارای مقدار صحیح یا true خواهد بود . اما با نسبت دادن یکی از مقادیر زیر ، می توانید آن را منفی یا false نمایید :
نکته : توجه نمایید به کار بردن مقدار "false" اشتباه بوده و باعث مثبت شدن مقدار متغیر می شود . باید بدون " " استفاده شود .
متد شی Boolean :
در لیست زیر متدهای شی Boolean قرار دارد . برای دریافت اطلاعات بیشتر و مثال های عملی بر روی نام آنها کلیک کنید :
نام متد |
کاربرد |
toString ( ) |
این متد مقدار شی Boolean را به متن string تبدیل کرده و آن را به خروجی بر می گرداند . |
valueOf ( ) |
این متد مقدار اولیه شی Boolean را بر می گرداند . |
شی Boolean - متد toString( )
این متد مقدار یک شی یا متغیر Boolean را به
متن ( String ) تبدیل
کرده و در خروجی بر می گرداند .
بر حسب مقدار
متغیر Boolean خروجی
این متد نیز متفاوت خواهد بود . اگر مقدار متغیر مثبت ( true ) باشد ، خروجی آن true و چنانچه
مفدار آن منفی ( false ) باشد ،
خروجیش false خواهد بود .
شکل کلی
استفاده از این متد به صورت زیر است :
Syntax |
نام
متغیر.toString( ) ; |
مثال : در مثال زیر دو متغیر از نوع Boolean را تعریف کرده و به هر کدام مقداری متفاوت داده ایم . سپس به وسیله متد toString() ، مقدار آنها را در خروجی چاپ کرده ایم :
Example |
|
<script
type = " text/javascript " > |
کد |