تبلیغات
اندیشه امروز - آموزش جاوا اسكریپت

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

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

جاوااسکریپت توسط شرکت Netscape اختراع شد و به عنوان اولین زبان اسکریپت نویسی در وب توسعه یافت که در حال حاضر پرکاربردترین و محبوب ترین زبان اسکریپت نویسی در دنیا می باشد که یکی از دلایل آن، پشتیبانی دو مرورگر معروف وب، Internet Explorer و Netscape Navigator از این زبان می باشد. نا گفته نماند که شرکت مایکروسافت هم برای اینکه از نت اسکیپ در این زمینه عقب نماند، نسخه مربوط به خود را بنام Jscript تولید کرد.

 

تفاوت جاوااسکریپت با جاوا

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

همانطور که میدانید جاوااسکریپت متعلق به شرکت نت اسکیپ می باشد اما زبان جاوا متعلق به شرکت Sun Microsystems است. جاوااسکریپت در اصل یک زبان اسکریپت نویسی است نه یک زبان برنامه نویسی کامپیوتر، شاید بتوان اسکریپتها را یک نوع زبان برنامه نویسی خیلی سبک و ساده نامید اما جاوا یک زبان برنامه نویسی کاملاً پیچیده مانند زبان C است. تفاوت دیگر آنها اینست که جاوااسکریپت توسط یک برنامه مفسر یعنی interpreter  در مرورگر تعریف و تفسیر شده تا قابل اجرا باشد و حتماً هم این کار در مرورگر انجام می شود اما برنامه های جاوا باید توسط یک کامپایلر Compiler ، کامپایل شده که کامپایل شدن یعنی جمع آوری اطلاعات مورد نظر و ترجمه آن اطلاعات به زبان قابل فهم برای کامپیوتر و تبدیل آن به یک برنامه کاربردی واحد و مستقل برای کاربر را گویند. به همین دلیل برنامه های جاوا را که اپلت applet می نامند، مستقل اجرا می شوند. البته اپلتهای جاوا را می توان در صفحات وب هم گنجاند.

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

 

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

اکنون که یک مفهومی از زبان جاوااسکریپت را در ذهن دارید، باید ببینیم که با آن چکار می توانیم انجام دهیم یا بهتر بگویم که جاوااسکریپت چه کاری برای ما انجام می دهد و چه قابلیتهایی را در مرورگر ایجاد می کند.

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

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

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

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

 

 

آغازاسکریپت نویسی

 

تگ اسکریپت

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

<script> ... </script>

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

 

language

اما تگ script مانند بقیه تگها دارای خصوصیاتی می باشد، یکی از آنها language است که مقدار آنرا باید برابر با javascript قرار دهید،

<script language="javascript">
</script>

برای مقدار javascript می توانید نسخه آن را هم بنویسید. این زبان هم مانند اچ تی ام ال دارای نسخه های مختلفی است که هر کدام آنها با قابلیتهای جدیدی در وب توسعه یافتند. نسخه های این زبان عبارتند از 1.0 ، 1.1 ، 1.2 ، 1.3 ، 1.4 و آخرین نسخه حال حاضر هم 1.5 می باشد که هم اکنون این نسخه با مرورگر مایکروسافت یعنی اینترنت اکسپلورر سازگاری ندارد. فعلاً مرورگر اینترنت اکسپلورر از نسخه 1.3 این زبان پشتیبانی می کند.

 

type

تگ اسکریپت خصوصیت type هم دارد که برای این زبان باید آنرا برابر با text/javascript قرار دهید. نکته قابل توجه اینست که اگر این خصوصیت را به این تگ اضافه کنید، مرورگر اینترنت اکسپلورر نسخه 1.5 این زبان را نادیده می گیرد و کد را اجرا می کند. شما می توانید با اجرای کد زیر هم اولین اسکریپت خود را تجربه کنید و هم خصوصیت type را در IE امتحان کنید.

خب مانند زبان اچ تی ام ال می توانید از یک ویرایشگر متن مانند برنامه Notepad استفاده کرده و کد زیر را در آن وارد کنید:

<html>
<head>
<title> My JavaScript </title>
</head>
<body>
<script language="javascript1.5" type="text/javascript">
document.write(" Hello my friends ")
</script>
</body>
</html>

اجرای این کد

اکنون این فایل را با پسوند htm ذخیره کنید و سپس آنرا در مرورگر اینترنت اکسپلورر اجرا کنید که جمله Hello my friends را باید در صفحه ببینید. حالا خصوصیت type را حذف کنید و دوباره فایل را ذخیره و مشاهده کنید، هیچ متنی در صفحه دیده نمیشود که با تغییر نسخه 1.5 به 1.3 آن متن دوباره نمایان خواهد شد. نوشتن نسخه جاوااسکریپت اجباری نیست یعنی می توانید آنرا ننویسید.

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

document.write(" Hello my friends ")

ببینیم در اینجا این عبارت چگونه برای مرورگر تفسیر می شود. document یعنی همان سند و فایل html که در آن این عملیات باید انجام شود و مرورگر به محض برخورد با این عبارت آماده می شود برای انجام کاری که بعد از یک نقطه نوشته می شود. در اینجا باید عمل write یعنی نوشتن را انجام دهد اما چی باید بنویسد، طبق قرارداد باید هر چیزی که در بین پرانتز هست را بنویسد و چون محتوای داخل پرانتز مابین دو علامت نقل قول یعنی " " قرار گرفته پس باید بصورت یک string در بیایند. string یعنی یک رشته کاراکتر که می تواند هم حرف باشد هم عدد و هم علامت و خاصیت string در این است که هرچیزی مابین دو علامت " " قرار گرفت عیناً باید در صفحه نوشته شود.

در جاوااسکریپت به document یک object یعنی شئ می گویند و هنگامی که یک نقطه بعد از آن گذاشته می شود آن شئ منتظر method خود می شود که در اینجا همان write است. به عبارت ساده این خط می گوید که آن شئ را بردار و در آن توسط متد نوشتن چیزی بنویس.

ساده بود، نه؟ بقیه دستورات هم به همین راحتی است فقط باید آنها را بنویسید و تمرین کنید تا در ذهنتان بمانند.

 

src

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

<html>
<head>
<script language="javascript" src="jsfiles/name.js" type="text/javascript">
</script>
</head>

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

 


نظرسنجی

  • آیا مطالب وبلاگ مفید است؟

آمار وبلاگ

  • کل بازدید :
  • بازدید امروز :
  • بازدید دیروز :
  • بازدید این ماه :
  • بازدید ماه قبل :
  • تعداد نویسندگان :
  • تعداد کل پست ها :
  • آخرین بازدید :
  • آخرین بروز رسانی :