|
صفحه 14 از 16
خلق اعداد تصادفی، Random number شئ Math دارای یک متد مفید برای خلق اعداد تصادفی بنام random است که الگوی آن بصورت زیر میباشد:
Math.random ( )
در متد بالا، جاوااسکریپت بین عدد یک و صفر، یک عددی را انتخاب می کند که این عدد اعشاری است. مثال هرگاه نیاز داشتید که این متد بین صفر و یک عدد بزرگتر از یک، عدد تصادفی پیدا کند باید طبق الگوی زیر عمل کنید:
Math.random ( ) * num
که بجای num عدد مورد نظر را می نویسید.
گرد کردن اعداد اعشاری همانطور که از اسم این متد پیداست، برای گرد کردن یک عدد اعشاری استفاده می شود که البته همین متد را به سه مدل می توان تعریف کرد: برای گرد کردن یک عدد اعشاری به عدد صحیح بعد از خود باید به شکل زیر عمل کنید:
Math.ceil ( num )
برای گرد کردن یک عدد اعشاری به عدد قبل:
Math.floor ( num )
و برای گرد کردن عدد اعشاری به نزدیک ترین عدد:
Math.round ( num )
بهتر است برای خلق اعداد تصادفی، این دو متد گفته شده را با هم ترکیب کنید تا اعداد صحیح بدست بیایند. مثال دو متد دیگر وجود دارد که می توانند بین اعداد تعیین شده، بزرگترین و کوچکترین عدد را پیدا کنند:
Math.max ( num, num, … ) Math.min ( num, num, … )
خصوصیات شئ Math این شئ دارای خصوصیات و ثابتهایی است که برای محاسبات عملیات پیچیده ریاضی بکار می رود: Math.E این خصوصیت مقدار ثابت عدد Euler را بر میگرداند که تقریباً برابر است با ۲/۷۱۸۲ . این عدد به عدد E معروف است. Math.PI مقدار ثابت عدد پی که تقریباً برابر است با ۳/۱۴ Math.LOG2E لگاریتم عدد Euler بر مبنای دو. تقریباً برابر است با ۱/۴۴۲۶ Math.LOG10E لگاریتم E بر مبنای ده. تقریباً برابر است با ۰/۴۳۴۲ Math.LN2 لگاریتم دو بر مبنای E. تقریباً برابر است با ۰/۶۹۳۱ Math.LN10 لگاریتم ده بر مبنای E. تقریباً برابر است با ۲/۳۰۲۵ Math.SQRT2 جذر عدد دو. تقریباً برابر است با ۱/۴۱۴۲ Math.SQRT1_2 جذر یک دوم. تقریباً برابر است با ۰/۷۰۷۱
توسط این خصوصیات دیگر لازم نیست که شما این اعداد را به خاطر بسپارید و فقط کافی است در صورت نیاز، این خصوصیات را در اسکریپت خود وارد کنید.
متدهای شئ Math متدهایی هم که در زیر لیست شده اند، کاربرد کمتری نسبت به متدهای ذکر شده در ابتدای این بخش دارند.
abs قدرمطلق بر میگرداند. acos آرک کسینوس نقطه x که یک عدد میان منفی یک و یک باید باشد؛ خارج از این اعداد مقدار NaN بر گردانده می شود. آرک کسینوس عدد یک برابر با صفر است و منفی یک برابر با عدد پی. asin آرک سینوس نقطه x که یک عدد میان منفی یک و یک ؛ خارج از آن مقدار NaN بر گردانده می شود. atan آرک تانژانت نقطه x . atan2 آرک تانژانت زاویه تتا بین دو نقطه x و y . cos کسینوس یک زاویه را بر میگرداند. exp مقدار Ex را بر میگرداند که E همان عدد ثابت Euler است و x هم یک مقدار عددی. log لگاریتم یک عدد بر مبنای عدد E . pow این متد توان را برای یک عدد محاسبه می کند و دارای دو پارامتر است که در اولی عدد مشخص می شود و در پارامتر دوم مقدار عددی توان را تعیین می کنید. sin سینوس یک مقدار عددی را محاسبه می کند. sqrt جذر یک عدد را برمی گرداند. tan عددی بر می گرداند که نشان دهنده تانژانت یک زاویه است.
شئ های مربوط به HTML DOM
در بخشهای قبل با شئ های درون ساخت جاوااسکریپت آشنا شدید. در این صفحه قصد داریم شئ های مربوط به HTML DOM را توضیح دهیم. ابتدا اجازه دهید در مورد DOM یک توضیحی بدهم که اصلاً DOM چی هست؟
تعریف DOM DOM مخفف سه کلمه Document Object Model می باشد. در بعضی جاها برگردان فارسی آنرا مدل شئ سند می گویند. متنی که در زیر آمده تعریف DOM بر اساس W3C است:
” The Document Object Model is a platform- and language -neutral interface that will allow programs and scripts to dynamically access and update the content, structure and style of documents. The document can be further processed and the results of that processing can be incorporated back into the presented page. This is an overview of DOM-related materials here at W3C and around the web. “
اما به زبان ساده، DOM رابطه بین عناصر HTML مانند متن ها، عکس ها و غیره را با همان سند اچ تی ام ال بیان می کند. این یک فرآیندی است که به برنامه ها و اسکریپت ها اجازه دسترسی به محتوا و ساختار داخلی پنجره مرورگر را میدهد تا آنها بتوانند بصورت آزادانه تغییراتی ایجاد کنند که نتیجه این تغییرات در صفحه وب نمایان شود. در همین رابطه زبانی بنام DHTML بوجود آمد که با ترکیب کردن عناصر اچ تی ام ال با استایل شیت و اسکریپتها می تواند محتوای اسناد وب را بصورت متحرک و پویا درآورد. در اینجا پویا بودن فقط به این منظور نیست که متنها حرکت کنند و از یک طرف وارد بشوند و از طرف دیگر خارج؛ ممکن است لینکها هر بار شما را به یک سایتی پیوند دهند و یا عکس ها مرتب تغییر کنند، کلاً هر تغییری که نیاز به کدنویسی مجدد برای آن سند را نداشته باشد، منظور پویا بودن را می رساند.
سلسله مراتب اشیاء DOM جاوااسکریپت، شئ هایی دارد که می توانند بطور مستقیم با خود مرورگر ارتباط برقرار کنند و همچنین شئ هایی که با صفحه وب در ارتباط هستند. در کل می توان این اشیاء را به دو دسته اصلی تقسیم کرد، دسته اول که BOM گفته می شود یعنی Browser Object Model شئ هایی که با پنجره مرورگر می توانند ارتباط برقرار کنند و دسته دوم DOM که با Document یعنی همان سند اچ تی ام ال. تمامی این اشیاء بر اساس یک سلسله مراتبی این ارتباط را برقرار می کنند که در رأس آنها شئ window می باشد. برای دیدن این سلسله مراتب اینجا را کلیک کنید. همانطور که در شکل مشاهده کردید از شئ window تا شئ Document جزو دسته BOM می باشند و اشیاء بعد از Document در دسته DOM قرار می گیرند. ناگفته نماند که در حال حاضر کمتر صحبت اصطلاح BOM می شود و کلاً این مجموعه را DOM می گویند. شما باید این سلسله مراتب را برای استفاده اشیاء آن، رعایت کنید. این سلسله مراتب را می توان به شجره نامه تشبیه کرد و شما مجبور هستید برای صدا کردن هر شخص آنرا با نام پدرش بیاورید و در بعضی جاها حتی نام پدر بزرگ هم لازم است، بطور مثال: علی فرزند محمد یا علی فرزند محمد فرزند حسین. در اینجا هم پدر اصلی Window می باشد وپدر بعدی Document است که فرزندهای آن همان عناصر اچ تی ام ال میباشند و سپس Form و در آخر هم Select که تنها یک فرزند دارد. برای استفاده از آنها باید ابتدا اسم پدر و سپس اسم فرزند را نوشت و در آخر هم خصوصیت و یا متد آن فرزند که همه اینها با یک نقطه از هم باید جدا شوند. بطور مثال اگر میخواهید یک فرم را بنام form1 صدا بزنید تا با آن ارتباط برقرار کنید باید به شکل زیر عمل شود:
window.document.form1
مانند همه اشیاء در جاوااسکریپت ، این شئ ها هم دارای خصوصیات و متدهایی هستند که بعد از رعایت کردن سلسله مراتب با گذاشتن یک نقطه می توانید آنها را بنویسید. مانند:
window.history.go (-1)
که اگر این شئ را در یک لینک قرار دهید با کلیک کردن بر روی آن، کاربر به صفحه قبل بازگشت داده می شود. در جدول زیر شئ های اصلی این سلسله مراتب لیست شده است.
| این شئ مستقیماً با پنجره مرورگر در ارتباط است که معمولاً خصوصیات و متدهای این شئ در تگهای body و frameset بکار می روند. |
window |
| این شئ شامل اطلاعاتی در رابطه با مرورگر کاربر است که توسط خصوصیات و متدهای آن این اطلاعات ذخیره تا مورد استفاده قرار گیرند. |
navigator |
| برای کار کردن بر روی فریمهای اچ تی ام ال. |
frame |
| دسترسی و ارتباط با کلیه عناصر اچ تی ام ال مانند، متنها فرمها عکسها و غیره. |
document |
| شامل اطلاعاتی در مورد URL یا همان آدرس اینترنتی صفحه ای که در حال نمایش است. |
location |
| این شئ دارای اطلاعاتی برای رجوع کاربر به صفحاتی که قبل از آن صفحه مشاهده شده و بر عکس. |
history |
| اطلاعات صفحه مرورگر کاربر را بر می گرداند مانند اندازه طول و عرض. |
screen |
|