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

جاوا اسکریپت چیست؟جاوا اسکریپت و وبچرا جاوا اسکریپت را انتخاب کنیم؟جاوا اسکریپت چه توانایی هایی دارد؟ابزارهای مورد نیاز برای خلق یک برنامه وب جاوا اسکریپتیدر این قسمت که مقدماتی و معارفه ای می باشد، خواهید دید که جاوا اسکریپت چیست؟! چه کارهای برای شما می تواند انجام دهد و چه چیزهایی برای استفاده از آن نیاز دارید. بر این مبنا در سراسر این آموزش شما چگونگی استفاده از جاوا اسکریپت برای خلق برنامه های قدرتمند مورد نیاز وب سایتتان فراخواهید گرفت. آسان ترین راه برای یادگیری هرچیزی انجام عملی آن و دیدن نتایج است. بنابراین در سراسر این آموزش مثالهای کاربردی جاوا اسکریپت را به همراه یکدیگر تست خواهیم کرد.جاوا اسکریپت چیست؟در این بخش نگاه مختصری خواهیم داشت به اینکه جاوا اسکریپت چیست، از کجا آمده و چگونه کار می کند. همچنین لیستی است از کارهای مفیدی که می توان با آن انجام داد.با انتخاب این آموزش، احتمالا به صورت کلی می دانید، جاوا اسکریپت یک زبان برنامه نویسی کامپیوتر است. در زبان طبیعی فارسی، دستورالعمل یا کدهایی که برای درست کردن یک فنجان قهوه فوری باید در نظر داشت، به ترتیب زیر است:1. ریختن پودر قهوه فوری در فنجان2. پر کردن کتری با آب3. قرار دادن کتری روی شعله4. آیا کتری جوشیده شده است؟ اگر آره، سپس آن را داخل فنجان خالی کنید و اگر نه بیشتر صبر کنید.5. قهوه را نوش جان کنید.شما اجرای این دستورات را از بالا به پایین و به صورت سلسله مراتبی دنبال می کنید.این مثال روشن می کند که زبان های کامپیوتری چگونه کار می کنند؛ از بالا به پایین، که جاوا اسکریپت نیز از این قاعده مستثنی نیست. اگر راه هایی برای رد کرد بعضی از خطوط برنامه یا تغییر مسیر وجود دارد که در مسیر پیش روی این دوره آموزشی به آن ورود خواهیم نمود.جاوا اسکریپت یک زبان مفسری است و نه کامپایلری!اما تفاوت مفسری و کامپایلری در چیست؟ اجازه بدهید یک راز را به شما بگویم؛ کامپیوتر در حالت کلی واقعا چیزی از جاوا اسکریپت نمی فهمد.این کامپیوتر به چیزی برای تفسیر جاوا اسکریپت و تبدیل آن به چیزی که قابل فهم باشد، نیاز دارد. پس از این جهت یک زبان مفسری است.کامپیوترها فقط زبان ماشین را می‌فهمند، که لزوما رشته ای از اعداد دودویی متشکل از صفر یک می باشد. مرورگر از طریق مفسر جاوا اسکریپت را به زبان ماشین تبدیل می کند که برای کامپیوتر شما قابل فهم است؛ این تقریبا مانند مترجمی است که زبان انگلیسی را به زبان اسپانیایی ترجمه می کند. نکته مهم درباره جاوا اسکریپت این است که برخلاف زبان های کامپایلری در هر سری از اجرا این اتفاق می افتد، این تفاوت نقطه خوبی برای برطرف کردن این افسانه است که جاوا اسکریپت نسخه اسکریپتی جاوا می باشد. جاوا و جاوا اسکریپت دارای اسامی مشابهی هستند اما این تنها چیزی است که به اشتراک دارند خبر خوب این است که یادگیری جاوا اسکریپت به مراتب آسان تر از جاوا است، در واقع زبانهایی مانند جاوا اسکریپت آسان ترین زبان های برنامه نویسی برای یادگیری هستند و در عین حال به طرز شگفت آوری نیز قدرت مند می باشند.جاوا اسکریپت و وب در بیشتر بخشهای این آموزش شما کدهای جاوا اسکریپت را مشاهده می کنید، که در صفحه وب و در محیط مرورگر اجرا می شوند. تمام آنچه که شما برای خلق صفحات وب نیاز خواهید داشت یک ویرایشگر متن یا TextEditor برای مثال Notepad و یک مرورگر وب مانند موزیلا فایرفاکس یا گوگل کروم خواهد بود که بتوانید از طریق آن صفحات وب را مشاهده کنید؛ این مرورگرها به مفسرهای جاوا اسکریپت مجهز شده اند.در واقع زبان جاوا اسکریپت ابتدا در مرورگر NetScape قرار گرفت و در آغاز با عنوان LiveScript شناخته می‌شد، در هر صورت چون جاوا فناوری داغ آن زمان بود؛ NetScape تصمیم گرفت آن را جاوا اسکریپت نامگذاری کند که هیجان انگیز تر باشد! زمانی که جاوا اسکریپت بیرون آمد مایکروسافت تصمیم گرفت نسخه مخصوص خودش را از آن به نام JScript منتشر کند، به همین منوال مایکروسافت، نت اسکیپ و دیگر شرکت‌ها نسخه های بهبود یافته خود را منتشر کردند و درون آخرین نسخه از مرورگر هایشان قرار دادند. شما احتمالاً ارجاع جاوا اسکریپت به عنوان ECMASCRIPT را شنیده یا خواهید شنید. ECMA مخفف European computer manufacturers association یک سازمان غیرانتفاعی است که استاندارد سیستم های اطلاعاتی و ارتباطی را توسعه می‌دهد. یکی از استانداردهایی که آنها برای جاوا اسکریپت توسعه می‌دهند ECMAScriptنامیده می شود که یکی از جنبه های چندگانه استاندارد کنترل زبان آنها؛ به سازگاری نسخه های مختلف جاوا اسکریپت کمک می کند اگر چه زمانی که ECMA استانداردها را برای زبان تنظیم می کند، مشخص نمی‌کند که در میزبان های مختلف چگونه استفاده شود، منظور از میزبان محیط میزبانی زبان است که در اینجا مرورگر وب می باشد و محیط های میزبانی دیگر شامل فایلهای pdf ، وب سرور ها و برنامه های فلش ماکرومدیا( تا حد زیادی به نظر می‌رسد از رونق افتاده اند) می باشد.در این دوره آموزشی ما فقط درباره مرورگرهای وب بحث می کنیم. هرچند در دوره بعد از این سری آموزش تحت عنوان جاوا اسکریپت مدرن گریزی به Node.js خواهیم زد.سازمانی که استاندارد صفحات وب را تعیین می کند کنسرسیوم w3 می باشد. آنها فقط استانداردهای XML, XHTML, HTML را تعیین نمی کنند بلکه مشخص می کنند که جاوا اسکریپت درون یک مرورگر وب چگونه عمل کند. شما درباره این موضوع در قسمت های آتی آموزش چیزهای بیشتری خواهید شنید.نخست به موارد حیاتی در جاوا اسکریپت می پردازیم پس از آن راجع به چیزهای پیشرفته تر صحبت می کنیم. بخش عمده صفحات وب را که در این آموزش ایجاد می‌کنیم و جاوا اسکریپت را در بر می گیرند می توانید در کامپیوتر خود ذخیره کنید و مستقیماً در مرورگر اجرا کنید شما همانند یک فایل متنی ساده می توانید آن ها را ایجاد کنید، اگرچه این کار مانند زمانی نیست که از طریق اینترنت به صفحات وب دسترسی پیدا کنید چرا که اینترنت شبکه ای بزرگ از کامپیوترهای متصل به یکدیگر است و به عبارت دیگر اینترنت شبکه ای از شبکه هاست.دسترسی به وب سایت ها یک سرویس ویژه است که توسط کامپیوتر های خاص در اینترنت فراهم می شود که به آنها وب سرور می گوییم، به زبان ساده وظیفه یک وب سرور این است که صفحات وب زیادی را بر روی هارد خود ذخیره کند زمانی که یک مرورگر که معمولاً در یک کامپیوتر متفاوت قرار دارد یک صفحه وب را که در وب سرور قرار دارد درخواست می کند؛ مروگر آن را از هارد دیسک خود فراخوانی می کند و سپس صفحه را به کامپیوتر درخواست کننده از طریق پروتکل ارتباطی خاص که http نامیده می شود ارائه می کند. کامپیوتر مرورگر ارسال کننده درخواست ها را اجرا می‌کند که به عنوان کلاینت شناخته می شود.رابطه کلاینت سرور مانند رابطه مشتری و فروشنده است مشتری به داخل فروشگاه می رود و می گوید یکی از آن چیزها را به من بده فروشنده نیز او را میزبانی می کند و موارد درخواستی او را به او می‌دهد، وضعیت وب هم مشابه به همین است؛ کلاینت مرورگر وب را مانند مشتری را اندازی می کند وب سرور صفحه درخواست شده را مانند فروشنده برای او فراهم می کند.وقتی که شما یک آدرس اینترنتی را در مرورگر تایپ می کنید از کجا می فهمد که کدام صفحه در کدام صفحه وب سرور قرار دارد؟ هر فروشگاهی یک آدرسی دارد مانند خیابان فلان و کوچه فلان، وب سرورها نیز دارای آدرس هستند اما آدرس آنها با نام خیابان تعریف نمی‌شود بلکه به جای آن آنها دارای آی‌پی آدرس می باشند که به صورت یکتا آنها را در فضای اینترنت در معرض دسترسی قرار می‌دهد این آدرس ها چهار بخش اعداد که با داد از یکدیگر تفکیک شده اند می باشد مانند 127.0.0.1چرا جاوا اسکریپت را انتخاب می کنیم؟جاوا اسکریپت فقط یک زبان اسکریپتی نیست زبان‌های دیگری مانند perl وجود دارد پس چرا جاوااسکریپت را ترجیح می دهیم ؟ دلیل اصلی انتخاب جاوا اسکریپت گستردگی و دسترسی پذیری آن است همه مرورگر های جدید از آن پشتیبانی می‌کند.همچنین جاوا اسکریپت چند بعدی و فراگیرنده است و فقط محدود به استفاده در مرورگرهای وب نیست و کاملاً شفاف است که در جاوا اسکریپت هر چیزی قابل انجام می باشد.جاوا اسکریپت چه توانایی هایی دارد؟１- اساسی ترین بخش صفحات وب است.２- رابطه آن با اینترنت اشیا که در دنیای امروز ما فرات در حال فرا گیری شده هستند .３- جاوا اسکریپت در برنامه نویسی موبایل نیز کاربرد دارد.فرمت فایل های جاوا اسکریپت js است و همچنین می توان در صفحات وب هم با تگ جاوا اسکریپت را اجرا کرد.فراخوانی یک فایل جاوا اسکریپت خارجی که دارای فرمت .jsاست توسط لینک زیر در صفحات وب صورت می گیرد:<script src="test.js" />