محدوده متغییرها مکانی است که میتوان از داده های موجود در متغییر بهره برد.
محدوده توابع در جاوا اسکریپت
در جاوا اسکریپت دو نوع محدوده داریم:
تعیین محدود تابع: هر تابعی که ایجاد میشود یک محدوده جدید ایجاد می کند.
متغییرهای موجود در محدوده تابع نمی توانند خارج از تابع استفاده شوند.
متغییرهای محلی در جاوا اسکریپت
متغییرهای درون توابع به نام متغییرهای LOCAL شناخته میشود . متغییر های محلی دارای محدوده محلی هستند و تنها درون تابع قابل فراخوانی می باشند.
مثال:
// code here can not use carName
function myFunction() {
var carName = "Volvo";
// code here can use carName
}
==========================
<p id="demo"></p>
<script>
myFunction();
document.getElementById("demo").innerHTML =
"The type of carName is " + typeof carName;
function myFunction() {
var carName = "Volvo";
}
</script>
=============================
The type of carName is undefined
از آنجا که متغییر محلی تنها درون تابع قابل فراخوانی است، از متغییری با نام یک سان میتوان در توابع مختلف استفاده کرد.
متغییر محلی با شروع تابع ایجاد و با پایان تابع پایان می یابد.
متغییرهای Global در جاوا اسکریپت
یک متغییر که خارج از تابع تعریف شود GLOBAL نامیده میشود.
یک متغییر عمومی دارای محدوده عمومی میباشد و تمام توابع در سرتاسر صفحه میتوانند از آن استفاده کنند:
var carName = " Volvo";
// code here can use carName
function myFunction() {
// code here can use carName
}
=======================
<p id="demo"></p>
<script>
var carName = "Volvo";
myFunction();
function myFunction() {
document.getElementById("demo").innerHTML =
"I can display " + carName;
}
</script>
=======================================
I can display Volvo
در جاوا اسکریپت،اشیاء و توابع بصورت متغییر در نظر گرفته میشوند.
تعیین محدوده عمومی بصورت اتوماتیک
اگر شما مقداری را به متغییری که تعریف نشده است نسبت دهید. آن متغییر بصورت پیشفرض بصورت GLOBAL تعریف میشود.
کدهای زیر متغییر carName را بصورت عمومی تعریف می کنند. توجه کنید که مقدار متغییر درون یک تابع تعریف شده است:
myFunction();
// code here can use carName
function myFunction() {
carName = "Volvo";
}
======================
<p id="demo"></p>
<script>
myFunction();
// code here can use carName as a global variable
document.getElementById("demo").innerHTML = "I can display " + carName;
function myFunction() {
carName = "Volvo";
}
</script>
=================================================================
I can display Volvo
متغییرهای عمومی در HTML:
در HTML کدهای با محدوده عمومی جزء شیئ Window فراخوانی میشوند.
مثال:
var carName = "Volvo";
// code here can use window.carName
==============================
<p id="demo"></p>
<script>
var carName = "Volvo";
// code here can use window.carName
document.getElementById("demo").innerHTML = "I can display " + window.carName;
</script>
============================================================
I can display Volvo
طول عمر متغییر ها در جاوا اسکریپت
عمر یک متغییر با تعریف آن شروع شده و در متغییر محلی با پایان تابع به اتمام میرسد. در متغییرهای عمومی پایان عمر متغییر با بستن پنجره و یا تب صفحه به پایان خواهد رسید. اگر یک صفحه جدید در همان پنجره باز شود کد های عمومی برای آن صفحه در دسترس خواهند بود.
آروگومان های تابع
آروگومان های تابع بعنوان متغییرهای محلی در داخل تابع عمل می کنند.
براي بهره مندي از مشاوره تخصصي در زمینه طراحی سایت در کرج با شرکت سارگون تماس بگيريد