شناسه های قانونی در زبان جاوا اسکریپت

Ratings
(0)

 از شناسه ها(Identifiers) در جاوا اسکریپت برای نام گذاری اشیاء و ظاهر شدن در نقش های مختلف گرامری استفاده می شود. بعنوان مثال، نام متغیرها و کلید پروپرتی هایی که توسط کوتیشن ها محصور نشده اند، باید شناسه های معتبری باشند. شناسه ها به حروف بزرگ و کوچک حساس هستند.

اولین کاراکتر از یک شناسه، باید یکی از موارد زیر باشد:

  1. کاراکترهای یونیکد، که شامل حروف لاتین مانند D و حروف یونانی مثل λ و حروف سیریلیک(Cyrillic) مثل Д .
  2. علامت دلار($)
  3. علامت آندرلاین(_)

کاراکترهای بعدی عبارتند از:

  1. هر کاراکتر قانونی برای اولین حرف
  2. هر رقم در مجموعه ی یونیکد Decimal number (Nd) که شامل اعداد اروپایی مثل 7 و اعداد وابسته به هند مثل ۳ می شود.
  3. دیگر علامت ها و علائم نگارشی یونیکد

 مثالی از شناسه های قانونی:

var ε = 0.0001;
var строка = '';
var _tmp;
var $foo2;

با اینکه شناسه های جاوا اسکریپت به ما امکان می دهند تا از زبان های متفاوتی استفاده کنیم، اما من(نویسنده) توصیه می کنم که برای هردوی شناسه ها و کامنت ها از زبان انگلیسی استفاده کنید. این کار، تضمین می کند که کدهای ما برای دیگران قابل فهم باشد؛ این مهم است، زیرا امروزه می توانیم کدهای خود را در سطح بین الملل پخش کنیم.

شناسه های زیر، کلمات رزرو شده در زبان جاوا اسکریپت هستند؛ آنها بخشی از سینتکس جاوا اسکریپت محسوب می شوند و نمی توانیم از آنها بعنوان نام متغیرها استفاده کنیم(همچنین نام توابع و پارامترها):

 

 

سه شناسه ی زیر، جزو کلمات رزرو شده نیستند، اما باید آنها را جزو این کلمات به حساب بیاوریم:

Infinity
NaN
undefined

 در نهایت، ما همچنین باید از نام های استانداردِ متغیرهای سراسری(standard global variables) اجتناب کنیم. شما می توانید از این نام ها برای متغیرهای محلی(local)، بدون شکستن آن، استفاده کنید؛ اما با این وجود کدهای ما هنوز هم گیج کننده خواهند بود.

توجه کنید که ما می توانیم از کلمات رزرو شده بعنوان کلیدهای پروپرتی(property keys)، بدون اینکه در بین کوتیشن ها قرار گیرند، استفاده کنیم:

> var obj = { function: 'abc' };
> obj.function
'abc'

 فراخوانی متدها برای لیترال های عددی

 در فراخوانی متدها، تمایز قائل شدن بین نقاط ممیز شناور(ریاضی) و نقاط فراخوانی متدها از اهمیت برخوردار است. به همین علت، ما نمی توانیم دستور 1.toString(); را مورد استفاده قرار دهیم؛ بلکه باید از یکی از روش های زیر استفاده کنیم: 

1..toString()
1 .toString() // قبل از نقطه، یک فاصله سفید وجود داره
(1).toString()
1.0.toString()

 

  • بازدید: 353

نوشتن دیدگاه

لطفا نظرات خود را بیان کنید. به سوالات در سریع ترین زمان پاسخ داده خواهد شد.اما به نکات زیر توجه کنید:
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.

ارسال