0

آموزش گام به گام جاوا اسکریپت

 
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت

مقدمه ای بر جاوا اسکریپت

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

برای شروع یادگیری javascript  چه چیزهایی را باید بدانیم؟

توانایی های پایه ای که شما برای درک جاوا اسکریپت باید بلد باشید HTML  و XHTML  می باشد که به راحتی قابل یاد گیری است.

جاوا اسکریپت چیست؟

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

آیا جاوا اسکریپت و جاوا یکی اند؟

نه!!!!
جاوا اسکریپت و جاوا java از دو بعد مفهوم و طراحی دو زبان کاملا متفاوت هستند.
جاوا java  ( که توسط شرکت sun توسعه یافته است ) فوی و بسیار پیچیده تر از جاوا اسکریپت است و در دسته بندی زبان هایی مانند C/C++ قرار میگیرد.

چه کارهایی را جاوا اسکریپت می تواند انجام بدهد؟

- جاوا اسکریپت به طراحان HTML یک ابزار برنامه نویسی می دهد . طراحانHTML  برنامه نویس نیستند ؛ اما جاوا اسکریپت یک زبان اسکریپت با دستورالعملهای خیلی ساده است ؛ به طوری که هرکس میتواند قسمت کوچکی از کدها را بر روی صفحه ی HTML  خودش قرار بدهد
- جاوا اسکریپت می تواند صفحات متحرک و پویا را داخل HTML  قرار بدهد.
یک دستور جاوا اسکریپت مانند:

Document.write("<h1> + name + "</h1>")

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

 

اسم واقعی اش ECMAScript  است!!!!

- اسم رسمی جاوا اسکریپت ECMAScript  است . استاندارد سازی و توسعه و نگه داری آن توسط  سازمان ECMA  انجام میگیرد.
- ECMA_262 استاندارد رسمی جاوا اسکریپت است . این استاندارد بر اساس Javascript (Nets cape) و Jscript ( Microsoft ) بیان شده است .
-  این زبان توسط براندان ایچ در Nets cape(با Navigator 20) ابداع شده  و در همه ی موتورهای جستجوی Netscape  و Microsoft  از سال 1996 ظاهر شده است.
- توسعه ی استاندارد  ECMA_262 از سال 1996 و اولین ویرایش آن در جون 1997  توسط مجمع عمومیECMA  پذیرفته شد.
- استاندارد به عنوان یک استاندارد ISO جهانی در سال 1998 شناخته شد.
- توسعه استاندارد هنوز هم در حال پیشرفت است.

سه شنبه 30 آبان 1391  7:59 AM
تشکرات از این پست
ravabet_rasekhoon manijehmohamadi
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - چگونه؟

چگونه جاوا اسکریپت را داخل صفحات HTML  قرار دهیم

<html>
<body>

    <script type = "text/javascript">

           Document.write("Hello World!");

    </script>

</body>
</html>


کد بالا در خروجی صفحه HTML نتیجه زیر را تولید میکند:

Hello World!

توضیح مثال
برای وارد کردن جاوا اسکریپت داخل صفحه HTML از تگ <script> استفاده می کنیم . داخل تگ <script> نوع خصوصیاتی که برای تعریف زبان اسکریپت تعریف می شود را تعریف میکنیم.
بنابراین <script type="text/javascript">  و </script>  به ما می گوید که جاوا اسکریپت از کجا شروع شده و کجا خاتمه پیدا کرده

<html>
<body>

     <script type="text/javascript">
         ......
     </script>

</body>
</html>

کلمه ی Document.write  یک دستور استاندارد جاوا اسکریپت برای نوشتن خروجی بر روی صفحه است. با قرار دادن دستور Document.write بین تگهای <script> و </script> مرورگرآن را به عنوان یک دستورجاوااسکریپت تشخیص داده و آن خط را اجرا می کند . در این مورد مرورگر Hello World!  را بر روی صفحه می نویسد.

<html>
<body>

     <script type="text/javascript">
          Document.write("Hello World!");
     </script>

</body>
</html>

توجه : اگر ما تگ <script>  را ننویسیم مرورگر خود دستور document.write("Hello World!")  را بدون هیچ تغییری چاپ می کند چراکه آن را به عنوان یک متن شناسایی خواهد کرد.

توضیحات HTML برای مدیریت مرورگرهای ساده

مرورگرهایی که از جاوا اسکریپت حمایت نمی کنند با آن به عنوان محتویات یک صفحه عمل می کنند .
برای جلوگیری از این مسئله و طبق استانداردهای جاوا اسکریپت ، توضیح تگهای HTML می تواند دستورات جاوا اسکریپت را پنهان کند . کافی است از تگ HTML  <!--  قبل از اول توضیحات جاوا اسکریپت  و یک <-- در آخر دستور بعد از آخرین توضیح جاوا اسکریپت استفاده کنید .

<html>
<body>

     <script type = "text/javascript">
     <!- -
          Document.write("Hello World!")
     // -- >
     <script/>

</body>
</html>

دو تا اسلشی که در آخر خط توضیحی وجود دارد (//) نشانه ی توضیحات جاوا اسکریپت است . که این از اجرای تگ <- - در جاوا اسکریپت جلوگیری می کند.

سه شنبه 30 آبان 1391  8:00 AM
تشکرات از این پست
sadegh123
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - کجا؟

جاوا اسکریپت در قسمت بدنه <body> در زمان لود صفحه اجرا میشود.
جاوا اسکریپت در قسمت عنوان<head> زمانی اجرا میشود که فراخوانی شود.

جاوا اسکریپت را کجا قرار بدهیم

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

اسکریپت در قسمت عنوان <head>

اسکریپت  هایی که میخواهیم با یک فرخوانی call یا با یک رویداد event اجرا شوند به قسمت عنوان انتقال میدهیم. زمانی که شما یک اسکریپت را در قسمت عنوان قرار می دهید ، شما مطمئن هستید که اسکریپت قبل از اینکه کسی بخواهد از آن استفاده کند لود می شود.

<html>
<head>
     <script type="text/javascript">
         ...
     </script>
</head>

<body>
</body>
</html>

 

اسکریپت در قسمت بدنه <body>

اسکریپت هایی که باید زمان لود صفحه اجرا شوند بهتر است در قسمت <body> قرار بگیرند. زمانی که شما یک اسکریپت را در قسمت بدنه برنامه قرار می دهید معمولا آن اسکریپت محتوای صفحه را تولید میکند.

<html>

<head>
</head>

<body>
     <script type="text/javascript">
          ...
     </script>
</body>

</html>

 

اسکریپت در هر دو قسمت بدنه و عنوان

شما می توانید تعداد نا محدودی از اسکریپتها را در متن خودتان قرار بدهید ؛ بنابراین شما می توانید اسکریپت را در هر دو قسمت عنوان و بدنه داشته باشید

<html>
<head>
     <script type="text/javascript">
         ...
     </script>
</head>

<body>
     <script type="text/javascript">
         ...
     </script>
</body>
</html>

 

استفاده از جاوا اسکریپت خارجی

گاهی اوقات ممکن است که شما بخواهید یک جاوا اسکریپت را در چندین صفحه اجرا کنید بدون اینکه مجبور باشید یک اسکریپت یکسان بر روی هر صفحه بنویسید.
برای ساده کردن ، شما می توانید یک جاوا اسکریپت را در یک فایل خارجی بنویسید . فایل خارجی جاوا اسکریپت را با عنوان یک فایل با پسوند .js ذخیره کنید .
توجه : اسکریپت خارجی نمی تواند شامل تگ <script> باشد .
برای استفاده از اسکریپت خارجی در فایل .js  داخل تگ <script> از صفت "src" بهره ببرید.

<html>
<head>

     <script type="text/script" src="xyz.js"> <script>

</head>

<body>
</body>

</html>

توجه : به یاد داشته باشید که اسکریپت را دقیقا جایی قرار دهید که اصولا باید در آنجا آن را مینوشتید.

سه شنبه 30 آبان 1391  8:01 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - دستورات جاوا اسکریپت

برخلاف HTML  ، جاوا اسکریپت case sensitive است ؛ بنابراین هنگام نوشتن حروف بزرگ یا کوچک دستورات ، عبارات و اسامی متغیرها حتما توجه داشته باشید که اشتباهی رخ ندهد! چرا که برای مثال جاوا اسکریپت JavaScript بین ali و Ali تفاوت قائل میشود.

دستورات جاوا اسکریپت - JavaScript Statements

یک دستور جاوا اسکریپت JavaScript یک فرمان به مرورگر است . هدف این دستورات این است که به مرورگر بگویید که چه کاری باید انجام دهد.
این دستور جاوا اسکریپت JavaScript به مرورگر می گوید که "Hello JavaSciprt PHP ASP" را بر روی صفحه وب نشان دهد:

document.write("Hello JavaSciprt PHP ASP");


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

کدهای جاوا اسکریپت

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

<script type="text/javascript">
      document.write("<h1>This is a header</h1>");
      document.write("<p>This is a paragraph</p>");
      document.write("<p>This is another paragraph</p>");
</script>

 

بلوکهای جاوا اسکریپت - JavaScript Blocks

توضیحات جاوا اسکریپت JavaScript می توانند با هم در یک بلوک ذخیره شوند
بلوکها با } شروع وبا { تمام می شوند .
هدف از این بلوکها این است که یک ترتیبی از توضیحاتی که با هم اجرا می شوند ایجاد شود
این مثال یک عنوان و دو پاراگراف را در صفحه وب می نویسد

<script type="text/javascript">
{
     document.write("<h1>This is a header</h1>");
     document.write("<p>This is a paragraph</p>");
     document.write("<p>This is another paragraph</p>");
}
</script>


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

سه شنبه 30 آبان 1391  8:03 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - توضیحات جاوا اسکریپت

توضیحات جاوا اسکریپت

کامنتها می توانند یک توضیح را به جاوا اسکریپت اضافه کنند و یا آن را خوانا تر کنند. کامنتها هیچگاه اجرا نمیشوند و بیشترین استفاده آن برای خود برنامه نویس است چراکه برنامه نویس میتواند با افزودن توضیحات به کد خوانایی و درک آن را برای خود و سایر برنامه نویسات بیشتر کند!
توضیحات یک خطی با // شروع می شوند .
این مثال از کامنتهای یک خطی برای توضیح کدها استفاده کرده است

<script type="text/javascript">
    // This will write a header:
    document.write("<h1>This is a header</h1>");
    // This will write two paragraphs:
    document.write("<p>This is a paragraph</p>");
    document.write("<p>This is another paragraph</p>");
</script>

 

توضیحات چند خطی جاوا اسکریپت

توضیحات چند خطی جاوا اسکریپت با  */  شروع شده و با /* تمام می شوند
این مثال از کامنتهای چند خطی برای توضیح کدها استفاده کرده

<script type="text/javascript">
     /*
     The code below will write
     one header and two paragraphs
     */
     document.write("<h1>This is a header</h1>");
     document.write("<p>This is a paragraph</p>");
     document.write("<p>This is another paragraph</p>");
</script>

 

استفاده از توضیح برای جلوگیری از اجرا

این مثالی از کامنت است که از اجرای یک کد یک خطی جلوگیری می کند

<script type="text/javascript">
      document.write("<h1>This is a header</h1>");
      document.write("<p>This is a paragraph</p>");
      //document.write("<p>This is another paragraph</p>");
</script>


این مثالی از کامنت است که از اجرای یک کد چند خطی جلوگیری می کند

<script type="text/javascript">
/*
document.write("<h1>This is a header</h1>");
document.write("<p>This is a paragraph</p>");
document.write("<p>This is another paragraph</p>");
*/
</script>

 

استفاده از کامنت در آخر یک خط

این نمونه ای از یک کامنت است که در آخر یک خط قرار دارد

<script type="text/javascript">
     document.write("Hello"); // This will write "Hello" 
     document.write("Dolly"); // This will write "Dolly" 
</script>
سه شنبه 30 آبان 1391  8:04 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - متغیرهای جاوا اسکریپت

آیا شما جبر را از زمان مدرسه به یاد دارید؟

آیا شما جبر را از زمان مدرسه به یاد دارید؟    x=5, y=6, z=x+y
آیا به یاد می آورید که یک حرف (مانند  x ) میتواند برای نگهداری یک مقدار ( مثل 5 ) به کار رود و شما میتوانید طبق اطلاعات بالا مقدار z را برابر 11 ارزیابی کنید
این حروف متغیر نامیده می شوند . و این متغیزها می توانند مقداری را در خود ذخیره کنند و یا آن را نشان دهند ( z=x+y )

متغیرهای جاوا اسکریپت

متغیرهای جاوا اسکریپت برای نگهداری مقدار و یا عبارات به کار می روند.
متغیرها می توانند اسمی کوتاه داشته باشند مانند X ویا کمی توصیفی باشند مانند Carname

قواعدی برای نامگذاری متغیرهای جاوا اسکریپت:
نام متغیرها به حروف کوچک و بزرگ حساس هستند case sensitive  هستند .(y  و Y دو متغیر متفاوت اند)
نام متغیر باید با حروف الفبا و یا آندرلاین شروع شود
توجه : چون خود جاوا اسکریپت Case-sensitive  است ؛ نام متغیرهای آن نیز  Case-sensitive است.

مثال:
مقدار یک متغیر در طول اجرا اسکریپت میتواند تغییر کند. شما میتوانید به یک متغیر از طریق نام آن دستیابی پیدا کنید - برای تغییر یا نمایش مفدارش

تعریف (ایجاد) متغیرهای جاوا اسکریپت

ایجاد متغیرها در جاوا اسکریپت بیشتر اوقات به تعریف متغیر اشاره می کند
شما می توانید متغبرهای جاوا اسکریپت را با  var  تعریف کنید .

var x;
var carname;

بعد از تعریف به صورت بالا متغیرها خالی هستند( هنوز هیچ اطلاعاتی داخل آنها نیست ) ؛ اگر چه شما می توانید آنها را موقع تعریف مقداردهی نمایید .

var x=5;
var carname="Volvo";


بعد از اجرای توضیح بالا متغیر x  مقدار 5 و carname  مقدار volvo را در خود نگه می دارد.

توجه : زمانی که شما متنی را داخل متغیر قرار می دهید باید علامت " را قبل از شروع و بعد از پایان آن قرار دهید .

مقداردهی به متغیرهای تعریف نشده جاوا اسکریپت

اگر شما مقداری داخل یک متغیر قرار دهید که هنوز اعلان نشده ، متغیرها به طور خودکاراعلان می شوند .

x=5;
carname="Volvo";


کد بالا و پایین معادلند:

var x=5;
var carname="Volvo";

 

اعلان دوباره متغیرهای جاوا اسکریپت

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

var x=5;
var x;

بعد از اجرای کد بالا ، متغیر  x  هنوز هم مقدار 5 را داراست . وقتی که شما دوباره ان را تعریف میکنید مقدار x از بین نمی رود و یا پاک نمی شود

محاسبات جاوا اسکریپت

همانند جبر ، شما می توانید عملگرهای محاسباتی را با متغیرهای جاوا اسکریپت به کار ببرید.

y=x-5;
z=y+5;

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

سه شنبه 30 آبان 1391  8:12 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - عملگرهای جاوا اسکریپت

عملگر جایگزینی = برای تعیین کردن یک مقدار به یک متغیر جاوا ایکریپت به کار می رود.
عملگر محاسباتی + برای جمع کردن مقادیر با یکدیگر به کار می رود.

y=5;
z=2;
x=y+z;


بعد از اجرای دستورات بالا مقدار x برابر 7 است .

عملگرهای محاسباتی جاوا اسکریپت

عملگرهای ریاضی برای اجرا محاسبات بین متغیرها و یا مقادیر ثابت به کار می رود.
با فرض y=5 جدول زیر عملگرهای محاسباتی جاوا اسکریپت را توضیح میدهد:

عملگر توضیح مثال نتیجه
+ جمع x=y+2 x=7
- تفریق x=y-2 x=3
* ضرب x=y*2 x=10
/ تقسیم x=y/2 x=2.5
% باقی مانده تقسیم x=y%2 x=1
++ افزایش یک واحد x=++y x=6
-- کاهش یک واحد x=--y x=4

 

عملگرهای جایگزینی

عملگرهای جایگزینی یک مقدار را به یک متغیر اختصاص می دهد
جدول زیر توضیح عملگر جایگزینی است که مقدار x=10 , y=5  را برمی گرداند

 

عملگر مثال معادل با نتیجه
= x=y   x=5
+= x+=y x=x+y x=15
-= x-=y x=x-y x=5
*= x*=y x=x*y x=50
/= x/=y x=x/y x=2
%= x%=y x=x%y x=0



عملگر + در رشته ها به کار می رود
عملگر + علاوه بر جمع دو متغیر رشته ای می تواند متن ها را به یکدیگر وصل کند

txt1="What a very";
txt2="nice day";
txt3=txt1+txt2;

 

برای جمع دو یا چند متغیر رشته ای با یکدیگر از عملگر + استفاده می شود

 

txt1="What a very ";
txt2="nice day";
txt3=txt1+txt2;

بعد از اجرای متن بالا txt3  برابر what a verynice day  می شود
برای اضافه کردن فضای خالی بین دو متن در یکی از آنها فضای خالی قرار می دهیم

txt1="What a very ";
txt2="nice day";
txt3=txt1+txt2;

یا برای قرار دادن فضای خالی دز یک عبارت

txt1="What a very";
txt2="nice day";
txt3=txt1+" "+txt2;

بعد از اجرای متن بالا txt3  برابر what a very nice day  می شود

جمع رشته ها و اعداد

به این مثالها توجه کنید

x=5+5;
document.write(x);

x="5"+"5";
document.write(x);

x=5+"5";
document.write(x);

x="5"+5;
document.write(x);


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

سه شنبه 30 آبان 1391  8:12 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

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

عملگر مساوی

برای عبارات منطقی و برای تعیین تساوی یا اختلاف بین متغیرها و یا شاخص ها  استفاده می شود .
x  را مساوی 5 قرار می دهیم . جدول زیر توضیح مقایسه عملگرهاست

عملگر توضیح مثال
== is equal to x==8 is false
=== is exactly equal to (value and type) x===5 is true
x==="5" is false
!= is not equal x!=8 is true
> is greater than x>8 is false
< is less than x<8 is true
>= is greater than or equal to x>=8 is false
<= is less than or equal to x<=8 is true

 


چگونه از آن استفاده کنیم؟

عملگر تساوی می تواند در عبارات شرطی بزای مقایسه مقادیر و انجام عملی وابسته به آن بر روی نتیجه استفاده می شود.

if (age<18) document.write("Too young");

شما می توانید چیزهای بیشتری از عبارات شرطی در بخش بعدی یاد بگیرید

عبارات منطقی

برای تعیین کردن منطق بین متغیرها و یا شاخص ها استفاده می شود .
 x=6 و  y=3 را در نظر می گیریم. جدول زیر توضیح عملگرهای منطقی است

عملگر توضیح مثال
&& and (x < 10 && y > 1) is true
|| or (x==5 || y==5) is false
! not !(x==y) is true

عملگر شرطی

جاوا اسکریپت نیز شامل یک عملگر شرطی است که یک مقدار را به یک متغیر مبنی بر چند شرط مقداردهی می کند.

variablename=(condition)?value1:value2 

مثال

greeting=(visitor=="PRES")?"Dear President ":"Dear ";


اگر متغیر  visitor  مقدار  "PRES"  بگیرد آنگاه متغیر greeting  مقدار  "Dear President " را در خود جای می دهد در غیر این صورت مقدار  Dear  در آن ذخیره می شود .

سه شنبه 30 آبان 1391  8:13 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - عبارات if...else در جاوا اسکریپت

عبارات شرطی

اغلب اوقات زمانی که شما کدی را می نویسید شما می خواهید کارهای مختلفی برای شروط مختلف اجرا شود . شما می توانید از عبارت شرطی داخل کدتان برای انجام آن استفاده کنید .


در جاوا اسکریپت عبارات شرطی زیر را داریم:
- عبارت  if  : این عبارت برای زمانی است که شما می خواهید بعضی از کدها را فقط زمانی که شرط  if  درست بود اجرا شود .
- عبارت if … else  : این عبارت برای زمانی است که شما می خواهید بعضی از کدها در صورتی که شرط درست بود اجرا شود و بعضی دیگر در صورتی که شرط نادرست بود اجرا شود .
- عبارت if … else if … else  : این عبارت برای زمانی است که شما می خواهید یکی از چند بلاک از کدها را برای اجرا انتخاب کنید .
- عبارت switch  : این عبارت زمانی اجرا می شود که شما می خواهید یکی از چند بلاک  از کدها را برای اجرا انتخاب کنید .

عبارت if  :

شما باید از عبارت  if  زمانی که می خواهید بعضی از کدها را فقط زمانی که یک شرط مشخص درست بود اجرا شود استفاده کنید .

Syntax

if (condition)
{
   code to be executed if condition is true
}


توجه کنید که  if  با حروف کوچک نوشته شده ، استفاده از حروف بزرگ ( IF ) در جاوا اسکریپت پیغام خطا صادر می کند .

مثال 1

<script type="text/javascript">
//Write a "Good morning" greeting if
//the time is less than 10
var d=new Date();
var time=d.getHours();

if (time<10) 
{
document.write("<b>Good morning</b>");
}
</script>


مثال 2

<script type="text/javascript">
//Write "Lunch-time!" if the time is 11
var d=new Date();
var time=d.getHours();

if (time==11) 
{
document.write("<b>Lunch-time!</b>");
}
</script>

توجه : زمانی که شما دو متغیر را مساوی هم قرار می دهید شما باید دو طرف تساوی را هم علامت قرار دهید (==) !

توجه کنید که در این syntax  ، else  وجود ندارد . در این کد شما فقط می گویید که اگر کد درست بود فقط قسمت مشخصی از آن کد اجرا شود .

عبارت  if … else  :

زمانی که شما می خواهید قسمت خاصی از یک کد در صورتی که شرط درست بود اجرا شود و قسمت دیگر در صورتی که شرط نادرست بود اجرا شود از  if … else  استفاده می کنید .

Syntax

if (condition)
{
code to be executed if condition is true
}
else
{
code to be executed if condition is not true
}



 مثال

<script type="text/javascript">
//If the time is less than 10,
//you will get a "Good morning" greeting.
//Otherwise you will get a "Good day" greeting.
var d = new Date();
var time = d.getHours();

if (time < 10) 
{
document.write("Good morning!");
}
else
{
document.write("Good day!");
}
</script>

 

عبارت if … else if … else  :

شما زمانی از  if … else if … else  باید استفاده کنید که شما می خواهید از بین تعداد زیادی مجموعه ای از خط ها  برای اجرا فقط یکی را انتخاب کنید .

Syntax

if (condition1)
{
code to be executed if condition1 is true
}
else if (condition2)
{
code to be executed if condition2 is true
}
else
{
code to be executed if condition1 and
condition2 are not true
}



مثال

<script type="text/javascript">
var d = new Date()
var time = d.getHours()
if (time<10)
{
document.write("<b>Good morning</b>");
}
else if (time>10 && time<16)
{
document.write("<b>Good day</b>");
}
else
{
document.write("<b>Hello World!</b>");
}
</script>

 

سه شنبه 30 آبان 1391  8:14 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - عبارت switch در جاوا اسکریپت

عبارت  switch  در جاوا اسکریپت

شما باید از  switch  زمانی استفاده کنید که بخواهید از بین تعداد زیادی از بلوکهای کد یکی از آنها اجرا شود .


Syntax

switch(n)
{
case 1:
  execute code block 1
  break;    
case 2:
  execute code block 2
  break;
default:
  code to be executed if n is
  different from case 1 and 2
}


نحوه کار : اول ما یک عبارت واحد  n  داریم ( اغلب اوقات یک متغیر) که فقط یک مرتبه ارزیابی می شود . مقادیراین عبارت با مقدار هر  case  در ساختار مقایسه می شود اگر برابر بود بلاک حاوی آن که وابسته به آن است  اجرا می شود . از  break  برای جلوگیری از اینکه به طور اتوماتیک به  case  بعدی نرود استفاده می شود .

مثال

<script type="text/javascript">
//You will receive a different greeting based
//on what day it is. Note that Sunday=0,
//Monday=1, Tuesday=2, etc.

var d=new Date();
theDay=d.getDay();
switch (theDay)
{
case 5:
  document.write("Finally Friday");
  break;
case 6:
  document.write("Super Saturday");
  break;
case 0:
  document.write("Sleepy Sunday");
  break;
default:
  document.write("I'm looking forward to this weekend!");
}
</script>
سه شنبه 30 آبان 1391  8:50 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - پنجره های popup در جاوا اسکریپت

پنجره هشدار

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

Syntax:

alert("sometext");

پنجره تایید

پنجره تایید معمولا زمانی استفاده می شود که کاربر چیزی را قبول یا بررسی کند.
زمانی که یک پنجره تایید ظاهر می  شود ، برای ادامه ، کاربر باید بر روی "ok"  یا "cancel" کلیک کند.
اگر بر روی "ok" کلیک کند ، پنجره مقدار "true"  و اگر بر روی "cancel" کلیک کند مقدار "false" بر می گرداند.

Syntax:

confirm("sometext");

 

پنجره دریافت پیام Prompt

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

Syntax:

prompt("sometext","defaultvalue");
سه شنبه 30 آبان 1391  8:51 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - توابع جاوا اسکریپت

برای جلوگیری از اجرای یک قطعه کد توسط مرورگر می توانید آن را در یک تابع قرار دهید.
یک تابع شامل کدهایی است که زمانی که یک رویداد خاص رخ دهد و یا تابع فراخوانی شود اجرا می شود.
شما ممکن است یک تابع را در هر جایی از صفحه فراخوانی کنید ( یا حتی در صفحات دیگر اگر تابع در داخل فایل با پیوند ".js"  جا سازی شده باشد.)
تابع در هر دو قسمت "head"  و یا "body" می تواند تعریف شود.
اگر چه برای اطمینان از اینکه قبل از فراخوانی ، آن تابع توسط مرورگر خوانده و بارگذاری شده است می توانید آن را در قسمت < head >  قرار دهید.

چگونه یک تابع را تعریف کنیم

دستورالعمل برای ایجاد تابع:

function functionname(var1,var2,...,varX)
{
some code
}


Var1,var2,… متغیرها و مقدارها را به تابع می فرستند} و { آغاز و پایان یک تابع را تعیین می کنند.
توجه: یک تابع بدون پارامتر باید بعد از نام تابع شامل پرانتز () باشد.

function functionname()
{
some code
}


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

مثالی از یک تابع در جاوا اسکریپت

<html>
<head>
<script type="text/javascript">
    function displaymessage()
    {
       alert("Hello World!");
    }
</script>
</head>

<body>
    <form>
       <input type="button" value="Click me!" onclick="displaymessage()" />
    </form>
</body>
</html>

اگر خط  alert("Hello world!!") در مثال بالا داخل تابع قرار نگرفته بود ، این خط به محظ لود صفحه اجرا می شد. حالا قبل از اینکه کاربر دکمه را فشار دهد اسکریپت اجرا نمی شود.
ما باید یک رویداد onclick را به دکمه برای اجرای تابع displaymessage() اضافه کنیم تا با کلیک بر روی دکمه این تابع فراخوانی شود.
نکات بیشتری در مورد رویدادهای جاوا ایکریپت را در فصل رویدادها یاد خواهیم گرفت.

عبارت بازگشتی :

عبارت بازگشتی برای تعیین مقدار بازگشتی تابع استفاده می شود .
بنابراین ، توابعی که مقدار بازگشتی دارند باید از این عبارت استفده نمایند.

مثال
تابع زیر باید حاصلضرب دو تابع را برگرداند

<html>
<head>
<script type="text/javascript">
    function product(a,b)
    {
         return a*b;
    }
</script>
</head>

<body>
    <script type="text/javascript">
         document.write(product(4,3));
    </script>
</body>
</html>

زمانی که شما تابع بالا را فراخوانی می کنید شما باید دو پارامتر را به تابع بفرستید.

p=product(2,3);

مقدار بازگردانده شده از تابع 6 است و این مقدار میتواند داخل متغیر یا برای نمایش روی صفحه استفاده شود.

عمر متغیرهای جاوا اسکریپت

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

سه شنبه 30 آبان 1391  9:03 AM
تشکرات از این پست
amz9924
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - حلقه for در جاوا اسكريپت

 حلقه هاي جاوا اسكريپت

معمولا زماني كه شما كدي مي نويسيد ممکن است بخواهيد يك بلاك يكسان از كد چند بار اجرا شود ، در این صورت به جاي آوردن چندين خط جديد دز يك اسكريپت مي توانيد از حلقه براي اجراي يك وظيفه ي مثل آن استفاده كنيد .

در جاوا اسكريپت دو نوع مختلف از حلقه ها وجود دارد


حلقه   : for  یک بلاک از کد را به تعداد مشخصی اجرا می کند.
حلقه: while   یک بلاک از کد را تا زمانیکه شرطی برقرار است اجرا می کند.


 حلقه : for
حلقه for  زماني كه شما مي دانيد كه چند بار يك اسكريپت بايد اجرا شود استفاده مي شود .

Syntax

for (var=startvalue;var<=endvalue;var=var+increment)
{
code to be executed
}

مثال:
مثال زير براي يك حلقه با مقدار ابتدايي i=0  تعريف شده است .حلقه تا زماني كه  iكوچكتر يا مساوي 5 باشد ادامه پيدا مي كند . مقدار i با هر بار اجراي حلقه يك واحد افزایش مي يابد.

توجه : مقدار پارامتر اضافه شونده مي تواند منفي باشد و <= مي تواند هر عبارت مقايسه ای باشد.

Example

<html>
<body>
<script type="text/javascript">
var i=0;
for (i=0;i<=5;i++)
{
document.write("The number is " + i);
document.write("<br />");
}
</script>
</body>
</html>

حلقه while :
اين حلقه در مبحث بعدي مطرح خواهد شد .

سه شنبه 30 آبان 1391  9:06 AM
تشکرات از این پست
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - حلقه while در جاوا اسكريپت

حلقه while

حلقه ي  while  ، یک بلاک از کد را تا زمانیکه شرطی برقرار باشد اجرا می کند.

Syntax

while (var<=endvalue)
  {
  code to be executed
  }

توجه: <=  مي تواند هر عبارت مقايسه ای باشد.

مثال:

مثال زير يك حلقه را با مقدار اوليه i=0 را تعريف كرده .حلقه تا زماني كه i كوچكتر ويا  مساوي 5 است ادامه مي يابد. مقدار i با هر بار اجراي حلقه يك واحد افزايش مي يابد.

مثال:

<html>
<body>
<script type="text/javascript">
var i=0;
while (i<=5)
  {
  document.write("The number is " + i);
  document.write("<br />");
  i++;
  }
</script>
</body>
</html>


حلقه  do … while:

حلقه  do … while يك نوع خاصي از حلقه ي while  است .اين حلقه يك بلاك از كد را حداقل یک بار اجرا می کند سپس تا زماني كه شرط درست باشد آن را تكرار مي كند.

Syntax

do
  {
  code to be executed
  }
while (var<=endvalue);

مثال:

مثال زير از حلقه ي do … while  استفاده كرده است . حلقه ي do … while  حداقل يك بار اجرا مي شود ؛ حتي زماني كه شرط غلط باشد. زيرا قبل از اينكه شرط بررسي گردد بدنه آن اجرا مي شود .  

          <html>
<body>
<script type="text/javascript">
var i=0;
do
{
document.write("The number is " + i);
document.write("<br />");
i++;
 }
while (i<=5);
</script>
</body>
</html>

 

سه شنبه 30 آبان 1391  9:08 AM
تشکرات از این پست
amz9924
hosseinb68
hosseinb68
کاربر طلایی1
تاریخ عضویت : بهمن 1389 
تعداد پست ها : 1269
محل سکونت : بوشهر

آموزش گام به گام جاوا اسکریپت - Break and Continue در جاوا اسكريپت

عبارت Break

عبارت Break  حلقه را مي شكند و كد بعد از حلقه را اجرا مي كند (اگر كدي بعد از آن نوشته شده باشد)

مثال

 

<html>
<body>
<script type="text/javascript">
var i=0;
for (i=0;i<=10;i++)
  {
  if (i==3)
    {
    break;
    }
  document.write("The number is " + i);
  document.write("<br />");
  }
</script>
</body>
</html>

عبارت Continue

عبارت Continue  حلقه جاري را مي شكند و با مقدار بعدي ادامه پيدا مي كند .

مثال

<html>
<body>
<script type="text/javascript">
var i=0
for (i=0;i<=10;i++)
  {
  if (i==3)
    {
    continue;
    }
  document.write("The number is " + i);
  document.write("<br />");
  }
</script>
</body>
</html>

سه شنبه 30 آبان 1391  9:09 AM
تشکرات از این پست
amz9924
دسترسی سریع به انجمن ها