JavaScript:Scope در جاوااسکریپت

از ویکی کد
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

https://www.w3schools.com/js/js_scope.asp

JavaScript Scope

Scope در جاوا اسکریپت

Scope determines the accessibility (visibility) of variables.

Scope میزان دسترسی (میزان قابل مشاهده بودن) متغیرها  را مشخص می کند .

JavaScript Function Scope

Scope تابع ها در جاوا اسکریپت

In JavaScript there are two types of scope:

در جاوا اسکریپت دو نوع Scope وجود دارد :

·  Local scope

Scope محلی یا local

·  Global scope

Scope جهانی یا کلی یا Global

JavaScript has function scope: Each function creates a new scope.

جاوا اسکریپت دارای scope تابع است : هر تابع یک Scope جدید ایجاد می کند.

Scope determines the accessibility (visibility) of these variables.

Scope میزان دسترسی (میزان قابل مشاهده بودن) متغیرها را مشخص می کند .

Variables defined inside a function are not accessible (visible) from outside the function.

متغیر هایی که درون یک تابع تعریف می شونئد از بیرون تابع قابل دسترسی (مشاهده) نیستند .

Local JavaScript Variables

متغیر های محلی یا local در جاوا اسکریپت

Variables declared within a JavaScript function, become LOCAL to the function.

متغیرهایی که درون یک تابع جاوا اسکریپت تعریف می شوند ، برای آن تابع متغیر محلی محسوب می شوند.

Local variables have Function scope: They can only be accessed from within the function.

متغیر های محلی scope تابع را دارند : آنها تنها می توانند از درون خود تابع مورد دسترسی واقع شوند .

Example

// code here can NOT use carName


function myFunction() {

 var carName = "Volvo";


  // code here CAN use carName


}

Since local variables are only recognized inside their functions, variables with the same name can be used in different functions.

از آنجایی که متغیر های محلی تنها درون توابعشان شناسایی می شوند ، متغیرها با یک نام مشترک را می توان در توابع مختلفی استفاده کرد .

Local variables are created when a function starts, and deleted when the function is completed.

متغیرهای محلی زمانی که اجرای تابع اغاز می شود ، ساخته می شود و زمانی که اجرای تابع کامل شد حذف می گردند .

Global JavaScript Variables

متغیر های جهانی یا کلی یا Global در جاوا اسکریپت

A variable declared outside a function, becomes GLOBAL.

متغیری که خارج از یک تابع تعریف شود ، global یا جهانی یا کلی محسوب می شود.

A global variable has global scope: All scripts and functions on a web page can access it.

یک متغیر کلی یا جهانی یا global دارای scope جهانی یا global است : تمامی اسکریپت ها وتوابع درون یک صفحه وب می تواننند به آن دسترسی داشته باشند .

Example

var carName = "Volvo";


// code here can use carName


function myFunction() {


 // code here can also use carName


}

JavaScript Variables

متغیر های جاوا اسکریپت

In JavaScript, objects and functions are also variables.

در جاوا اسکریپت ، شی ها و توابع نیز متغیر هستند .

Scope determines the accessibility of variables, objects, and functions from different parts of the code.

Scope میزان دسترسی به متغیر ها ، شی ها و توابع را از بخش های مختلف کد مشخص می کند .

Automatically Global

متغیر جهانی یا Global خودکار

If you assign a value to a variable that has not been declared, it will automatically become a GLOBAL variable.

اگر شما مقداری را به یک متغیر که تعریف نشده انتساب دهید ، این متغیر به صورت خودکار به عنوان یک متغیر جهانی یا Global شناخته می شود .

This code example will declare a global variable carName, even if the value is assigned inside a function.

در مثال زیر ، یک متغیر جهانی یا کلی یا Global با نام carName حتی اگر درون یک تابع مقدار دهی شود ، تعریف می شود .

Example

myFunction();


// code here can use carName


function myFunction() {

  carName = "Volvo";

}

Strict Mode

مد یا حالت سخت گیرانه

All modern browsers support running JavaScript in "Strict Mode".

تمامی مرورگرهای مدرن جاوا اسکریپت را حالت سخت گیرانه یا strict mode اجرا می کنند.

You will learn more about how to use strict mode in a later chapter of this tutorial.

شما مطالب بیشتری را در مورد اینکه چگونه از مد یا حالت سخت گیرانه (strict mode) در فصل های آینده از این آموزش خواهید آموخت.

Global variables are not created automatically in "Strict Mode".

متغیر های جهانی یا کلی یا Global به صورت خودکار در حالت سخت گیرانه (Strict mode) ایجاد نمی شوند.

Global Variables in HTML

متغیر های کلی یا Global در html

With JavaScript, the global scope is the complete JavaScript environment.

در جاوا اسکریپت ، scope جهانی یا کلی شامل کل محیط جاوا اسکریپت می شود .

In HTML, the global scope is the window object. All global variables belong to the window object.

در html ، scope جهانی یا کلی یا Global شی پنجره یا Window است . تمامی متغیرهای کلی یا Global به شی پنجره یا window وابسته هستند.

Example

var carName = "Volvo";


// code here can use window.carName

Warning

Do NOT create global variables unless you intend to.

متغیر های کلی یا Global ایجاد نکنید مگر اینکه به آن نیاز داشتید .

Your global variables (or functions) can overwrite window variables (or functions).

متغیر ها  و یا توابع کلی یا Global شما می توانند متغیر ها و یا توابع شی پنجره یا window را بازنویسی کنند.

Any function, including the window object, can overwrite your global variables and functions.

هر تابعی ، که شامل شی Window یا پنجره نیز می شود ، می تواند توابع و متغیر های کلی یا جهانی یا global شما را بازنویسی کند.

The Lifetime of JavaScript Variables

حیات متغیرها در جاوا اسکریپت

The lifetime of a JavaScript variable starts when it is declared.

حیات یک متغیر در جاوا اسکریپت زمانی اغاز میشود که آن متغیر تعریف می شود.

Local variables are deleted when the function is completed.

متغیر های محلی زمانی که اجرای تابع به پایان می رسد ، حذف می شوند .

In a web browser, global variables are deleted when you close the browser window (or tab), but remain available to new pages loaded into the same window.

در نرم افزار های مروگر وب ، متغیر های جهانی یا Global زمانی که شما پنجره مرورگر (و یا زبانه) را میبندید حذف میشوند اما برای صفحات جدیدی که در پنجره یکسان بارگذاری میشوند همچنان در دسترس خواهند بود .

Function Arguments

آرگومان های توابع

Function arguments (parameters) work as local variables inside functions.

آرگومان های تابع (پارامترهای یک تابع) همانند متغیرهای محلی درون یک تابع کار می کنند.