- دستور if
- دستور switch
- شیء date
بخش اول : دستور if
if از دو قسمت شرط و دستورات تشکیل شده. دستور if به دو صورت زیر به کار می رود.
(شرط)if
{دستورات ۱}
}else
دستورات ۲
{ |
(شرط)if
{دستورات}
|
در نوع اول شرط داخل پرانتز بررسی می شود و اگر شرط برقرار باشد دستورات داخل کروشه انجام می شود، در غیر این صورت جاوا شرط if رو رها کرده و به سایر دستورات می پردازد.از نوع دوم هنگامی استفاده می شود که بخواهیم در صورت درست نبودن شرط نیز دستوری دیگر انجام شود. یعنی در این دستور شرط بررسی می شود و اگر درست بود دستورات۱ اجرا می گردددر غیر این صورت دستورات۲ اجرا می شوند.
با کمک این دانسته ها حالا می تونیم مثال جلسه قبل در قسمت confirm رو حل کنیم. یک بار دیگه مثال را توضیح می دم: می خواهیم صفحه ای ایجادکنیم که پس از ورود کاربر به آن صفحه، کادری به او نمایش دهیم و از او بپرسیم ” آیا شما مایلید رنگ صفحه را تغییر دهید؟ ” و با انتخاب دکمه ok توسط کاربر، رنگ زمینه صفحه تغییر کند و با انتخاب cancel رنگ زمینه به همان صورت سفید باقی بماند.
۲ |
var c=confirm( "do you want change background color? " ) |
۴ |
{ ; " window.document.bgColor=" lavender} |
۵ |
else { document.bgColor= "white" }; |
|
وضیحات:
اگر به یاد داشته باشید قبلا گفتم دستور confirm یک کادرپیام با دو دکمه ok و cancel را نمایش می دهد که با انتخاب ok مقدار true و با انتخاب cancel مقدار false برگردانده می شود که این مقدار در متغیر c ریخته می شود. در خط بعد، شرط را به این صورت نوشته ام که اگر مقدار c، true بود رنگ زمینه صفحه تغییر کند، در غیر این صورت یعنی اگر مقدار c ، false شد (انتخاب cancel) رنگ زمینه تغییری نکند.
بخش دوم : دستور switch
switch یکی دیگر از دستورات شرطی است و با آن می توان شرط های چندگانه را بررسی کرد.
۰۳ |
Case 1 : dasture1; break ; |
۰۴ |
Case 2 : dasture2; break ; |
۰۵ |
Case 3 : dasture3; break ; |
۰۹ |
default : dasture akhar; |
|
مثال: در این مثال صفحه ای طراحی می کنیم که با یک پیام از کاربر می خواهد که یکی از حروف نام برده شده را وارد کند سپس حرف را تشخیص داده وبا توجه به انتخاب کاربر، رنگ متن را تغییر دهد.
<script>
۰۲ |
); var colors=prompt( "please enter R or B or Y or M" ,"M |
۰۵ |
"; case " R ": document.fgColor=" Red |
۰۸ |
"; case " B ": document.fgColor=" Blue |
۱۰ |
"; case " M ": document.fgColor=" Magenta |
۱۲ |
"; case " Y ": document.fgColor=" Yellow |
۱۴ |
; "default: document.fgColor=" Green |
|
توضیحات:
ابتدا توسط prompt حرف وارد شده را از کاربر می گیریم و آن را در متغیر colors ذخیره می کنیم، سپس با دستور switch بررسی می کنیم که کاربر چه رنگی را انتخاب کرده. مثلا در اولین Case، شرطی نوشتیم که اگر مقدار متغیر colors ، R بود، رنگ متن قرمز شود و…
default : در خط آخر(default) مشخص می کنیم که اگر هیچ کدام از شرط های بالا برقرار نبود، یعنی کاربر حرف دیگری را وارد کرد، شرط قسمت default انجام شود یعنی رنگ متن سبز شود.
break: جاوا اسکریپت با رسیدن به این دستور از شرط خارج می شود، این دستور را باید بنویسیم. به دلیل اینکه وقتی یک شرط برقرار باشد و دستورات آن انجام شود، دیگه نیازی به بررسی سایر شرط ها نیست. برای دیدن نتیجه صحیح این دستور، باید حروف را همانطور که تعریف شده یعنی به صورت بزرگ وارد کنید.
بخش آخر : شیء Date
در فصل قبل درمورد اشیاء در جاوا اسکریپت توضیح دادم و گفتم بعضی از اشیاء از قبل در جاوا تعریف شده اند. به دلیل گستردگی آنها، قصد نداشتم در مورد این اشیاء توضیح بدم ولی از اونجایی که بعضی از این اشیاء حتما به کارتون میاد تصمیم گرفتم در انتهای هر جلسه ای که زیاد سنگین نیست شما رو با یکی از آنها آشنا کنم. که در این جلسه با شیء Date آشنا می شوید.
متدها
|
عملکرد
|
getDate |
روز ماه را برمیگرداند
|
getDay()
|
روز هفته
|
getMonth()
|
عدد مربوط به هر ماه
|
getYear()
|
سال
|
getHours()
|
فقط ساعت
|
getMinute()
|
دقیقه
|
getSecond()
|
ثانیه
|
toLocaleDateString()
|
نمایش تاریخ کامل(سال، ماه، روز)
|
toLocaleTimeString()
|
نمایش ساعت، دقیقه و ثانیه
|
toLocaleString()
|
زمان کامل یعنی هم تاریخ وهم ساعت
|
دستورات زیر رو امتحان کنید، تا با دیدن نتیجه آنها، با کارایی هر دستور بیشتر آشنا بشید.
۰۲ |
> "); document.write(D+" <p |
۰۴ |
document.write( "Year:" + " " + D.getYear()+ "<br>" ); |
۰۶ |
document.write( "Month:" + " " + D.getMonth ()+ "<br>" ); |
۰۸ |
document.write( "Date:" + " " + D.getDate ()+ "<br>" ); |
۱۰ |
document.write( "Day:" + " " + D.getDay ()+ "<br>" ); |
۱۲ |
document.write( "Hours:" + " " + D.getHours ()+ "<br>" ); |
۱۴ |
document.write( "Minute:" + " " + D.getMinutes ()+ "<br>" ); |
۱۶ |
document.write( "Seconds:" + " " + D.getSeconds ()+ "<br>" ); |
۱۸ |
document.write( "LocalString:" + " " + D.toLocaleString ()+ "<br>" ); |
۲۰ |
document.write( "Full Date:" + " " + D.toLocaleDateString ()+ "<br>" ); |
۲۲ |
document.write( "Full Time:" + " " + D.toLocaleTimeString() ); |
|
توضیحات:
در خط اول یک شیء جدید Date را با استفاده از دستور new Date ایجادکردیم که در متغیر D نگهداری می شود. و در خط بعد مقدار آن را در صفحه نوشتیم. همانطور که در نتیجه مشاهده می کنید در خط اول تمام اطلاعات زمانی، نمایش داده می شود، این یعنی شیء Date همه مقادیر زمانی رو داره.
پس در خط های بعد اومدیم با کمک متدها، بخشی از زمان رو که به اون نیاز داریم به صورت جداگانه از شیء Date دریافت کردیم و در صفحه نمایش دادیم. در اینجا ما اطلاعات زمانی رو از سیستم گرفتیم و فقط آنها را نمایش دادیم. اما ما میتونیم دستورات رو دستکاری کنیم. یعنی خودمون اطلاعات رو برای این شیء مشخص کنیم. به مثال زیر توجه کنید:
۰۱ |
var n = new Date( 2009 , 10 , 9 , 11 , 20 , 50 ); |
۰۲ |
> "); document.write (n+" <p |
۰۴ |
> "); document.write(" Year: " + n.getYear() +" <br |
۰۶ |
> "); document.write(" Month: " + n.getMonth() +" <br |
۰۸ |
> "); document.write(" Date: " + n.getDate() +" <br |
۱۰ |
> "); document.write(" Hours: " + n.getHours() +" <br |
۱۲ |
> "); document.write(" Minute: " + n.getMinutes() +" <br |
۱۴ |
document.write( "Second:" + n.getSeconds() ); |
|
در دستور بالا پس از ساخت نمونه ای از شیء Date، خودمان مقادیر رو برای آن مشخص کردیم. وبا اجرای همان دستورات اولیه می بینید که این بار داده های گرفته از شما را نمایش می دهد نه تنظیمات سیستم! خط زیر بیانگر این است که در پرانتز شیء Date چه چیزهایی را مقداردهی کردم.
;( var n = new Date(Year , Month , Date , Hours , Minute , Second
|