جاواسکریپت: ۲- سینتَکس
دستور زبان – Syntax
-
- حساس به نوع حرف (Case Sensitive):
جاواسکریپت به کوچکی یا بزرگی حروف اهمیت میدهد و آنها را دو کاراکتر متفاوت در نظر می گیرد. (A ≠ a) - بی تفاوت نسبت به فاصلهها:
جاواسکریپت فاصلهها را نادیده میگیرد. فاصلهها، سر خط رفتن و تورفتگیها همه برای خوانایی برنامه رعایت می شود. - توضیحات (Comments):
جاواسکریپت توضیحات را نادیده میگیرد ولی برای فهمیدن روند اجرای برنامه بسیار ضروری است. توضیحات به دو روش می تواند در متن جاواسکریپت نوشته شود.
- حساس به نوع حرف (Case Sensitive):
// Single line Comments
/*
Multi-line
Comments
*/
-
- سِمی کُلُن (Semicolon):
سمی کلن نشان دهنده پایان دستور است.
بنابراین چند دستور میتواند در یک خط پشت سر هم بیاید.
و یا یک دستور در چند خط زیر هم نوشته شود.
- سِمی کُلُن (Semicolon):
Multiple Statements; On One Line;
One Statement
On Multiple Lines;
-
- نقطه (Dot):
بین نام آبجکت و پراپرتی، متد یا ایونت همیشه نقطه گذاشته میشود.
- نقطه (Dot):
Object.property
Object.method
Object.event
آغاز کار در جاواسکریپت
پیش از هر کاری بهتر است با چند آبجکت در وب بروزر آشنا شویم.
window
آبجکت window، آبجکت گلوبال (global) یا سراسری نامیده میشود. به این معنا که پراپرتی و متدهای آن همه جا در دسترس است. و نیازی به نوشتن آن نیست.
window.alert
متد alert یک پیام را در یک پنجره نمایش میدهد.
// Displaying a text message
window.alert("Hello World!");
// is the same as
alert("Hello World!");
// Displaying a Number
alert(20); // Outputs: 20
دستورات بالا را در کنسول آزمایش کنید.
تمرین ۱
- در فولدر js1 یک فولدر به نام 1-02 بسازید.
- یک فایل به نام index.html در آن ایجاد کنید.
- یک جاواسکریپت اینترنال در آن بنویسید که پیام زیر را نمایش دهد:
I’m ‘Name‘, Can I help you?
- بجای Name نام خود را بنویسید.
console
آبجکت console بیشتر برای اشکال زدایی (debugging) است. و خطاها آنجا نمایش داده میشود.
console.log
متد console.log یک پیام را در کنسول نمایش میدهد.
// Displaying a text
console.log("Hello World!");
// Displaying a Number
console.log(20); // Outputs: 20
دستورات بالا را در کنسول آزمایش کنید.
تمرین ۲
- در فولدر js1 یک فولدر به نام 2-02 بسازید.
- یک فایل به نام index.html در آن ایجاد کنید.
- یک جاواسکریپت اینترنال در آن بنویسید که پیام زیر را در کنسول نمایش دهد:
Completed Successfully.
document
آبجکت document محتوای داخل window است.
document.write
متد document.write یک رشته متنی را در داخل بروزر نمایش میدهد.
// Displaying a html
document.write("<h1>Hello World!</h1>");
// Displaying a text
document.write("Your number is: ");
// Displaying a Number
document.write(20); // Outputs: 20
دستورات بالا را در کنسول آزمایش کنید.
document.getElementById
متد document.getElementById یک المنت با id خاصی را میگیرد.
<h1 id="greet">Hello World!</h1>
// Gets the element with the 'greet' id:
document.getElementById("greet");
دستورات بالا را در کنسول آزمایش کنید.
آناتومی المنت HTML
element.innerHTML
متد element.innerHTML محتوای یک المنت را برمیگرداند یا تغییر میدهد.
<h1 id="greet"></h1>
<div id="msg"></div>
<p id="no"></p>
// Displaying a text
document.getElementById("greet").innerHTML = "Hello World!";
// Displaying a html
document.getElementById("msg").innerHTML = "Your number is:";
// Displaying a Number
document.getElementById("no").innerHTML = 20;
دستورات بالا را در کنسول آزمایش کنید.
تمرین ۳
- این فایل را دانلود کنید.
- آن را در فولدر js1 باز کنید.
- یک جاواسکریپت اینترنال در آن بنویسید که نامتان را در تگ h1 نمایش دهد.
element.setAttribute
متد element.setAttribute یک اتریبیوت به المنت اضافه میکند.
<h1 id="hi">Hello World!</h1>
document.getElementById("hi").setAttribute("style", "color: red");
دستورات بالا را در کنسول آزمایش کنید.
تمرین ۴
- این فایل را دانلود کنید.
- آن را در فولدر js1 باز کنید.
- یک جاواسکریپت اینترنال در آن بنویسید که تصویر را در تگ img تغییر دهد.
element.style.property
متد element.style.property یک inline css به المنت اضافه میکند. پراپرتی css باید اینجا به شکل camelCase نوشته شود.
<h1 id="hi">Hello World!</h1>
document.getElementById("hi").style.color = "red";
دستورات بالا را در کنسول آزمایش کنید.
element.onclick
ایونت element.onclick یک مجموعه ای از دستورات را هنگام کلیک روی المنت اجرا میکند. به این مجموعه دستورات فانکشن (function) میگویند.
فانکشن: یک مجموعهای از دستورات که کار خاصی را انجام میدهند. در جاواسکریپت فانکشن، به روشهای گوناگونی نوشته میشود. که در آینده با انواع آن آشنا خواهید شد. در اینجا سادهترین شکل آن را می بینید:
function() {…}
دستورات مورد نظر را درون {…} کِرلی بِرَکِت Curly Bracket بنویسید.
روی تصویر زیر کلیک کنید.
<img src="photo.jpg" id="pic"/>
document.getElementById("pic").onclick = function(){ alert("Hi"); }
دستورات بالا را در کنسول آزمایش کنید.
تمرین ۵
- این فایل را دانلود کنید.
- آن را در فولدر js1 باز کنید.
- یک جاواسکریپت اینترنال در آن بنویسید که در صورت کلیک روی دکمه تصویر ظاهر شود.
راهنمایی:
display: block;