آموزش برنامهنویسی (قسمت اول)
ساختار لغوی یک زبان برنامهنویسی
منظور از ساختار لغوی یک زبان برنامهنویسی، قوانینی است که چگونگی برنامهنویسی را در آن زبان مشخص میکند. به عبارت دیگر، پایینترین سطح نحوی (Syntax) زبان است که چگونگی نامگذاری متغیرها، مجموعه کاراکترها، چگونگی تفکیک دستورات برنامه از یک دیگر و استفاده از توضیحات را تعیین میکند.
حساسیت نسبت به حروف
جاوااسکریپت نسبت به حروف حساس است، یعنی بین حروف کوچک و بزرگ تفاوت قایل میشود. به عبارت دیگر، کلمات کلیدی، متغیرها، اسامی توابع و سایر شناسهها باید به شکل خاصی نامگذاری و تایپ شوند.
مثال: کلمه کلیدی while به صورت WHILE و یا While قابل استفاده نیست و متغیرهای SUM، sum و Sum با هم فرق میکنند.
نکته: HTML نسبت به حروف حساس نیست و میتوانند با حروف کوچک و بزرگ نوشته شوند.
به عنوان مثال صفت اداره کننده رویداد onclick در HTML، معمولاً در زبان HTML به صورت onClick و در جاوااسکریپت به صورت onclick نوشته میشود.
انواع دادهها
· عددی (Number)
· رشتهای (String)
· بولی (Boolean)
· تهی (Null)
· تعریف نشده (Undefined)
دادههای عددی
مهمترین نوع دادههای اولیه، نوع عددی هستند. جاوااسکریپت بین مقادیر صحیح و ممیز شناور تمایز قایل نمیشود. تمام اعداد در این زبان به صورت ممیز شناور نمایش داده میشوند.
داده عددی صحیح
دهدهی (Decimal): اعداد صحیح مبنای 10 که به صورت دنبالهای از ارقام نوشته میشوند، مثل 1024، 13 و 1000000. در جاوااسکریپت میتوان اعداد 253 – تا 253 را نمایش داد.
شانزدهی (Hexadecimal): مقادیر صحیح مبنای 16 در جاوااسکریپت همواره با کاراکترهای 0x (صفر و ایکس) شروع میشوند. مبنای 16 از اعداد صفر تا 9 و حروف A تا F (برای اعداد 10 تا 15) تشکیل شده است. مانند 0x15، 0xff و 0x3039
هشت هشتی (Octal): مقادیر مبنای 8 در جاوااسکریپت همیشه با حرف O شروع میشوند و از مقادیر صفر تا 7 تشکیل شدهاند. مانند O023 و یا O523
ممیز شناور
برای نمایش اعدادی به کار میروند که نیاز به نقطه اعشار دارند، یا بسیار بزرگ و یا بسیار کوچک هستند که باید به صورت توانی نوشته شوند. مانند -42.25، 12E2، 0.005، 1.4E-12
رشتهها
رشته، دنبالهای از حروف، ارقام و... است که برای نمایش متنها در جاوااسکریپت به کار میرود. مقدار رشتهای را میتوان در نقل و قولهای یکانی یا دو تایی قرار داد. مانند "Book"، "Ali"، "123"
مقادیر بولی
نوع بولی فقط دو مقدار میپذیرد. این دو مقدار true به معنای درستی و false به معنی نادرستی مشخص میشوند.
مقدار null
از نوع معمولاً برای مقدار دادن اولیه به متغیرها استفاده میشود. مقدار null یا تهی با " " مشخص میگردد.
مقدار undefined
این مقدار، برای مقادیر عددی به NaN، برای مقدار بولی به false و برای رشتهها به undefined تبدیل میگردد.
متغیرها
متغیرها، نامی برای کلمات حافظهاند که مقادیر را ذخیره میکنند. با استفاده از متغیرها میتوان مقادیری را در حافظه کامپیوتر ذخیره کرد و سپس آنها را دستکاری نمود.
نامگذاری متغیرها
1. نام متغیر نمیتواند با عدد شروع شود.
2. نمیتواند هم نام با کلمات رزرو شده باشند.
3. نمیتواند از علایم ویژه مانند (نقطه، /، *، -، @، # و..) در نام متغیر استفاده نمود.
تعیین نوع متغیرها
در جاوااسکریپت نوع متغیر با انتساب به آن تعیین میشود. به عنوان مثال:
radius=10;
myschool="Edalat";
visibled=true;
اولین دستور مقدار 10 را در متغیر radius قرار میدهد و در نتیجه نوع آن، عددی تعیین میشود. در دستور دوم رشته "Edalat" را در متغیر myschool قرار میدهد و نوع متغیر myschool رشتهای تعیین میشود. در دستور سوم مقدار true در متغیر visibled قرار میگیرد. چون مقدار true یک مقدار از نوع بولی است، نوع متغیر visibled بولی است.
اعلان متغیرها
در جاوااسکریپت، قبل از به کارگیری متغیرها، باید آنها را اعلان کرد. برای اعلان متغیرها از کلمه کلیدی var استفاده میشود. به عنوان مثال:
var i;
var sum;
برای این که از چند متغیر با کلمه var اعلان شوند، آنها را باید با کاما از هم جدا کرد:
var i, sum;
هنگام اعلان متغیرها میتوان به آنها مقدار داد و در نتیجه، نوع آنها را تعیین نمود:
var message="Enter a number";
var x=5, y=10;
نکته: اگر متغیری را اعلان کنید، ولی مقدار اولیهای برای آن تعیین نکنید، مقدار آن undefined خواهد بود.
ثابتها
ثابتها همانند متغیرها هستند و مقادیریاند که در برنامه وجود دارند و در سراسر برنامه هیچ تغییری در آنها ایجاد نمیشود. ثابتها با دستور const تعریف میشوند:
const نام ثابت = مقدار;
مثال:
const pi=3.141592;
با اجرای این دستور، مقدار pi برابر با 3.141592 تعیین میشود و در طول اجرای برنامه قابل تغییر نیست.
عملگرها
· محاسباتی
· منطقی
· مقایسهای
· بیتی
· انتساب
· شرطی
عملگرهای محاسباتی
عملگر نام مثال
+ جمع x+y
- تفریق x-y
* ضرب x*y
/ تقسیم x/y
% باقیمانده تقسیم x%y
++ افزایش x++ یا ++x
-- کاهش x—یا –x
عملگرهای مقایسهای
عملگر نام مثال
== تساوی x==y
=== تساوی دقیق x===y
=! نامساوی x != y
==! نامساوی دقیق x !== y
> کوچکتر از x < y
=> کوچکتر یا مساوی x <= y
< بزرگتر از x > y
=< بزرگتر یا مساوی x >= y
عملگرهای انتساب
عملگر نام مثال معادل
= انتساب x=y
=+ انتساب جمع x+=y x=x+y
=- انتساب تفریق x-=y x=x-y
=% انتساب باقیمانده تقسیم x%=y x=x%y
=* انتساب ضرب x*=y x=x*y
=/ انتساب تقسیم x/=y x=x/y
تقدم عملگرها
تقدم عملگر
1 پرانتزها
2 ++، --، - یکانی، !
3 %، /، *
4 -، +
5 =<، <، =>، >
6 =!، ==
7 ^
8 =%، =*، =-، =+، =