اگر به صورت ابتدایی وارد حوزه وب شوید حتما بارها با جاوااسکریپت برخورد کردهاید. زبان جاوااسکریت یکی از زبانهای مرتبط با فرانت اند است که به عنوان یک زبان پویا برای طراحی وب عمل میکند. در این مقاله سعی کردیم به تفصیل به توضیحات مربوط به جاوااسکریپت بپردازیم.
جاوااسکریپت چیست؟
جاوااسکریپت زبان سطح بالا، شیءگرا، پویا و مکمل زبانهای HTML و CSS است. لازم به ذکر است که زبان جاوااسکریپت هیچ ارتباطی با زبان جاوا ندارد و کاملا از آن مستقل است. بعد از آن که برنامه نویس با زبانهای HTML و CSS اسکلت و ظاهر سایت را درست کرد، جاوااسکریپت وارد میدان میشود و سایت را از حالت استاتیک خارج کرده و به آن امکان عملکردهای مختلف را میدهد. جاوااسکریپت برای نوشتن برنامههای دسکتاپ و موبایل نیز کارایی دارد اما نمیتواند با سایر برنامهها رقابت کند از این رو بیشترین کاربرد آن در نوشتن برنامههای تحت وب است زیرا در این زمینه بیرقیب است.
مطلب پیشنهادی: آشنایی با زبان HTML
مطلب پیشنهادی: آشنایی با زبان CSS
مروری بر تاریخچه جاوااسکریپت
جاوااسکریپت در سال 1995 توسط شرکت نتاسکیپ طراحی و معرفی شد. جاوااسکریپت در ابتدا با نام Mocha و پس از آن با نام LiveScript شناخته میشد. برخی معتقدند نام گذاری این زبان با عنوان جاوااسکریپت، جهت جذب طرفداران زبان جاوا و جلب توجه بازار صورت گرفته است؛ چرا که جاوا در آن زمان در بین برنامه نویسان زبان مطرحی محسوب میشد.
جاوااسکریپت یک زبان تفسیری
جاوااسکریپت یک زبان تفسیری است و نیازی به کامپایلر ونرمافزار خاصی ندارد. کدهای این زبان مانند سایر زبانهای تفسیری خط به خط تفسیر میشود و اگر اشکالی در خط اول باشد به خط دوم نمیروند. اگرچه دیباگ کردن و خطایابی این نوع زبانها ساده است اما در مقابل به کندی اجرا میشوند.
جاوااسکریپت یک زبان پویا
توسعهدهنده وب با استفاده از زبان جاوااسکریپت به کاربر این امکان را میدهد تا با سایت ارتباط برقرار کند. چند عمل که با استفاده از جاوااسکریپت برای کاربر در راستای ارتباط با وبسایت میسر میشود در ادامه آورده شده است:
پخش ویدیوی آپلود شده بر روی وبسایت
پخش فایل صوتی موجود در وبسایت
کلیک روی لینکهای مختلف
تغییر حالت دکمه با قرار گرفتن نشانگر ماوس بر روی آن
باز شدن منوها
توسعه بازی با جاوااسکریپت
با استفاده از زبان جاوااسکریپت میتوانید بازیهایی را برای وب طراحی کنید. به عنوان مثال بازی HexGl، بازی CrossCode، بازی Swoop و بازی The Wizard با استفاده از جاوااسکریپت ساخته شدهاند. لازم است ذکر کنیم که برای ساختن بازیهای موبایل یا دسکتاپ، جاوااسکریپت کاربرد چندانی ندارد و توسعه دهندهها ترجیح میدهند از زبانها دیگری استفاده کنند.
کتابخانههای کاربردی جاوااسکریپت
جاوااسکریپت دارای کتابخانهها و فریم ورکهای زیادی است که کار را برای توسعه دهنده ساده میکنند. فریم ورک انگولار، کتابخانههای جی کوئری، نود جی اس، ری اکت، آنگولار جی اس و وی یو جی اس از امکانات این زبان محسوب میشوند که به توسعه دهنده کمک میکند تا برای رسیدن به هدف خود به جای نوشتن کدهای خیلی طولانی، تنها چند سطر کوتاه بنویسد. در واقع کتابخانهها شامل کدهای بسیار پیچیده است که به صورت ساده در اختیار توسعه دهنده قرار میگیرد.
بازار کار زبان جاوااسکریپت
به جرات میتوان گفت یکی از بهترین زبانهای برای ورود به بازار کار زبان جاوااسکریپت است. این زبان در ساخت وبسایتها و برنامههای تحت وب بی رقیب است. این زبان چند سکویی است اما بیشترین کاربرد آن در زمینه وب است و در سایر زمینهها بازار کار خوبی ندارد. در واقع اگر هدف شما ورود به زمینه ساخت وبسایت است این زبان یک انتخاب هوشمندانه است اما اگر در زمینههای دیگر قصد فعالیت دارید زبانهای بهتری را میتوانید برگزینید.
مشاهده و ثبت نام دوره های طراحی سایت
میزان سختی یادگیری زبان جاوااسکریپت
جاوااسکریپت یکی از زبانهای آسان برای شروع است. این زبان نیازی به محیط از پیش نصب شده و خاصی برای کدنویسی ندارد و به سادگی هرچه تمامتر میتوانید کد نویسی را شروع کنید. برای یادگیری این زبان کافی است اصطلاحات محاوره و ساده زبان انگلیسی را بدانید و با پشتکار تمرین و ممارست را ادامه دهید. زبان جاوااسکریپت شباهت زیادی به زبان سی دارد. در صورتی که با سایر زبانهای خصوصا برنامههایی که مشابه سی نوشته میشوند آشنایی داشته باشید یادگیری زبان جاوااسکریپت برای شما بسیار سادهتر میشود.
نمونه کد نوشته شده با زبان جاوااسکریپت
این کد جدولی را برای شما تهیه می کند که شامل نام، نام خانوادگی، ایمیل، نام کاربری، رمز عبور و تکرار رمز عبور است. کافی است برای اجرای این کد از نوتپد استفاده کنید.
<html>
<head>
<title>Form Validation
<script type="text/javascript">
var divs = new Array();
divs[0] = "errFirst";
divs[1] = "errLast";
divs[2] = "errEmail";
divs[3] = "errUid";
divs[4] = "errPassword";
divs[5] = "errConfirm";
function validate()
{
var inputs = new Array();
inputs[0] = document.getElementById('first').value;
inputs[1] = document.getElementById('last').value;
inputs[2] = document.getElementById('email').value;
inputs[3] = document.getElementById('uid').value;
inputs[4] = document.getElementById('password').value;
inputs[5] = document.getElementById('confirm').value;
var errors = new Array();
errors[0] = "Please enter your first name!";
errors[1] = "Please enter your last name!";
errors[2] = "Please enter your email!";
errors[3] = "Please enter your user id!";
errors[4] = "Please enter your password!";
errors[5] = "Please confirm your password!";
for (i in inputs)
{
var errMessage = errors[i];
var div = divs[i];
if (inputs[i] == "")
document.getElementById(div).innerHTML = errMessage;
else if (i==2)
{
var atpos=inputs[i].indexOf("@");
var dotpos=inputs[i].lastIndexOf(".");
if (atpos<1 || dotpos=inputs[i].length)
document.getElementById('errEmail').innerHTML = "Enter a valid email address!";
else
document.getElementById(div).innerHTML = "OK!";
}
else if (i==5)
{
var first = document.getElementById('password').value;
var second = document.getElementById('confirm').value;
if (second != first)
document.getElementById('errConfirm').innerHTML = "Your passwords don't match!";
else
document.getElementById(div).innerHTML = "OK!";
}
else
document.getElementById(div).innerHTML = "OK!";
}
}
function finalValidate()
{
var count = 0;
for(i=0;i<6;i++)
{
var div = divs[i];
if(document.getElementById(div).innerHTML == "OK!")
count = count + 1;
}
if(count == 6)
document.getElementById("errFinal").innerHTML = "All the data you entered is correct!!!";
}
script>
head>
<body>
<table id="table1">
<tr>
<td>First Name:
<td>
<td>
tr>
<tr>
<td>Last Name:
<td>
<td>
tr>
<tr>
<td>Email:
<td>
<td>
tr>
<tr>
<td>User Id:
<td>
<td>
tr>
<tr>
<td>Password:
<td>
<td>
tr>
<tr>
<td>Confirm Password:
<td>
<td>
tr>
<tr>
<td>
<td>
tr>
table>
body>
html>
منابع
نظر دهید
با استفاده از فرم نظردهی زیر به بهبود خدمات کمک کنید.