آموزش جاوا اسکریپت در یازده روز – روز پنجم (دستورات شرطی)

شنبه, ۲۴ام بهمن , ۱۳۸۸ | ۱۵ دیدگاه

سلام، امروز می خوام در مورد دستورات شرطی در جاوا اسکریپت توضیح بدم. ما در زندگی و مکالمات روزانه از دستورات شرطی زیاد استفاده می کنیم: اگر تلاش کنی موفق می شوی، گر صبر کنی زغوره حلوا سازی و جملات بسیاری مانند اینها. همانطور که می دانید در این جمله ها در صورت برقرار بودن شرط است که عملی صورت می گیرد. مثلا در جمله اول اگر شرط تلاش کردن برقرار باشد موفقیت حاصل می شود. در زبان های برنامه سازی هم که از زبان ما جدا نیستند ساختارهای شرطی وجود دارند.

مباحثی که در این جلسه می خوانیم:

  1. دستور if
  2. دستور switch
  3. شیء date

بخش اول :  دستور if
if از دو قسمت شرط و دستورات تشکیل شده. دستور if به دو صورت زیر به کار می رود.

(شرط)if

{دستورات ۱}

}else

دستورات ۲

{

(شرط)if

{دستورات}

در نوع اول شرط داخل پرانتز بررسی می شود و اگر شرط برقرار باشد دستورات داخل کروشه انجام می شود، در غیر این صورت جاوا شرط if رو رها کرده و به سایر دستورات می پردازد.از نوع دوم هنگامی استفاده می شود که بخواهیم در صورت درست نبودن شرط نیز دستوری دیگر انجام شود. یعنی در این دستور شرط بررسی می شود و اگر درست بود دستورات۱ اجرا می گردددر غیر این صورت دستورات۲ اجرا می شوند.

با کمک این دانسته ها حالا می تونیم مثال جلسه قبل در قسمت confirm رو حل کنیم. یک بار دیگه مثال را توضیح می دم: می خواهیم صفحه ای ایجادکنیم که پس از ورود کاربر به آن صفحه، کادری به او نمایش دهیم و از او بپرسیم ” آیا شما مایلید رنگ صفحه را تغییر دهید؟ ” و با انتخاب دکمه ok توسط کاربر، رنگ زمینه صفحه تغییر کند و با انتخاب cancel رنگ زمینه به همان صورت سفید باقی بماند.

<script>
var c=confirm("do you want change background color? ")
if (c==true)
{ ;"   window.document.bgColor=" lavender}
else {  document.bgColor="white" };
</script>

توضیحات:

اگر به یاد داشته باشید قبلا گفتم دستور confirm یک کادرپیام با دو دکمه ok و cancel را نمایش می دهد که با انتخاب ok مقدار true و با انتخاب cancel مقدار false برگردانده می شود که این مقدار در متغیر c ریخته می شود. در خط بعد، شرط را به این صورت نوشته ام که اگر مقدار c، true بود رنگ زمینه صفحه تغییر کند، در غیر این صورت یعنی اگر مقدار c ، false شد (انتخاب cancel) رنگ زمینه تغییری نکند. نتیجه

بخش دوم :  دستور switch

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
    ) switch (colors
}
       "; case "R": document.fgColor="Red
       ; braek

       "; case "B": document.fgColor="Blue
       ; braek
       "; case "M": document.fgColor="Magenta
       ; braek
       "; case "Y": document.fgColor="Yellow
       ; braek
       ; "default: document.fgColor="Green
{
  </script>

توضیحات:

ابتدا توسط prompt حرف وارد شده را از کاربر می گیریم و آن را در متغیر colors ذخیره می کنیم، سپس با دستور switch بررسی می کنیم که کاربر چه رنگی را انتخاب کرده. مثلا در اولین Case، شرطی نوشتیم که اگر مقدار متغیر colors ، R بود، رنگ متن قرمز شود و…

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

break: جاوا اسکریپت با رسیدن به این دستور از شرط خارج می شود، این دستور را باید بنویسیم. به دلیل اینکه وقتی یک شرط برقرار باشد و دستورات آن انجام شود، دیگه نیازی به بررسی سایر شرط ها نیست. برای دیدن نتیجه صحیح این دستور، باید حروف را همانطور که تعریف شده یعنی به صورت بزرگ وارد کنید.

بخش آخر :  شیء Date

در فصل قبل درمورد اشیاء در جاوا اسکریپت توضیح دادم و گفتم بعضی از اشیاء از قبل در جاوا تعریف شده اند. به دلیل گستردگی آنها، قصد نداشتم در مورد این اشیاء توضیح بدم ولی از اونجایی که بعضی از این اشیاء حتما به کارتون میاد تصمیم گرفتم در انتهای هر جلسه ای که زیاد سنگین نیست شما رو با یکی از آنها آشنا کنم. که در این جلسه با شیء Date آشنا می شوید.

متدها

عملکرد

getDate

روز ماه را برمیگرداند

getDay()

روز هفته

getMonth()

عدد مربوط به هر ماه

getYear()

سال

getHours()

فقط ساعت

getMinute()

دقیقه

getSecond()

ثانیه

toLocaleDateString()

نمایش تاریخ کامل(سال، ماه، روز)

toLocaleTimeString()

نمایش ساعت، دقیقه و ثانیه

toLocaleString()

زمان کامل یعنی هم تاریخ وهم ساعت

دستورات زیر رو امتحان کنید، تا با دیدن نتیجه آنها، با کارایی هر دستور بیشتر آشنا بشید.

(); var D = new Date
 >"); document.write(D+"<p

document.write( "Year:"    +    "&nbsp"  +   D.getYear()+"<br>");

document.write("Month:"   +    "&nbsp"  +   D.getMonth ()+"<br>");

document.write("Date:"     +     "&nbsp"  +  D.getDate ()+"<br>");

document.write("Day:"      +     "&nbsp"  +  D.getDay ()+"<br>");

document.write("Hours:"   +     "&nbsp"  +   D.getHours ()+"<br>");

document.write( "Minute:"  +    "&nbsp"  +   D.getMinutes ()+"<br>");

document.write("Seconds:" +    "&nbsp"  +   D.getSeconds ()+"<br>");

document.write("LocalString:" + "&nbsp"  +  D.toLocaleString ()+"<br>");

document.write("Full Date:"  +  "&nbsp"  +  D.toLocaleDateString ()+"<br>");

document.write("Full Time:"  +  "&nbsp"  +  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

خوب این هم از جلسه پنجم، امیدوارم مفید بوده باشه. در جلسه بعد پس از یادگیری تابع ها تقریبا بیشتر راه رو رفتید و می تونید با خلاقیت خودتون صفحات جالبی رو طراحی کنید.

پستهای مرتبط :

آموزش جاوا اسکریپت در یازده روز – روز اول

آموزش جاوا اسکریپت در یازده روز – روز دوم

آموزش جاوا اسکریپت در یازده روز – روز سوم

آموزش جاوا اسکریپت در یازده روز – روز چهارم

Be Sociable, Share!


۱۵ دیدگاه


  1. امید
    ۲۷ بهمن ۱۳۸۸

    ممنون!




  2. مریم
    ۲۸ بهمن ۱۳۸۸

    مرسی از زحمتتون .مریم هستم دانشجوی آی تی در هلند.
    بقیه قسمتها رو نمیتونم ببینم نوشته شده؟؟؟
    لطفا زود خبرش رو بدین من هفته دیگه امتحان دارم میخواهم کل این مطالب رو (کل ۱۱ قسمت )به زبان فارسی هم یک بار بخونم …
    سایتتون عالیه خدا خیرتون بده واقعا.




  3. کامران
    ۲۸ بهمن ۱۳۸۸

    مریم جان اولا که خوشحالم که به ما پیوستی
    بقیه قسمت ها هم آماده نیستند وگرنه میزاشتیم تو سایتو مطالب به تدریج آماده میشن




  4. امین
    ۳ اسفند ۱۳۸۸

    برای چندمین بار ممنون:)




  5. عاطفه
    ۴ اسفند ۱۳۸۸

    #امین: بازم ممنون از شما!



  6. […] آموزش جاوا اسکریپت در یازده روز – روز پنجم […]



  7. […] آموزش جاوا اسکریپت در یازده روز – روز پنجم […]



  8. […] آموزش جاوا اسکریپت در یازده روز – روز پنجم […]




  9. gozali
    ۸ اردیبهشت ۱۳۸۹

    kheyli alie mamnon




  10. saeid
    ۱۴ تیر ۱۳۸۹

    با سپاس فراوان




  11. مرتضی
    ۱۶ دی ۱۳۸۹

    برای دریافت فایل کدهای این صفحه به مشکل خوردم دانلود نمیشه




  12. ترنم
    ۲۵ دی ۱۳۸۹

    سلام ممنون آقا کامران




  13. asayesh
    ۱۲ بهمن ۱۳۸۹

    عاطفه خانم من واقعا به شما حسودی میکنم . من رشته ام کامپیوتر است (کاردانی)ولی سخته برام اینهمه زبان رو یاد بگیرم لطفا کمکم کنید .البته تا الان هم خیلی کمکم کردین.واقعا ممنون




  14. سپیده
    ۱۶ اسفند ۱۳۸۹

    عاطفه جان فایل زیپتون عمل نمیکنه




  15. zeynab
    ۲۹ شهریور ۱۳۹۰

    چرا فایل زیپ عمل نمی کنه ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟



دیدگاه خود را بنویسید