معرفی برخی از اصطلاحات مخصوص جاوا اسکریپت

10 / 10
از 1 کاربر

دانستن اصطلاحات تخصصی جاوا اسکریپت نه تنها باعث افزایش دایره لغات شما می شود بلکه به بهبود درک شما از جاوا اسکریپت نیز کمک می کند. این اصطلاحات معمولا در مستندات و مقالات تخصصی یافت می شوند. در این مقاله از طراحی سایت به معرفی برخی از اصطلاحات مخصوص جاوا اسکریپت می پردازیم.

معرفی برخی از اصطلاحات مخصوص جاوا اسکریپت

• Arity

Arity اصطلاحی است که به تعداد عملیات ها در یک ساختار یا عملکرد اشاره دارد. شما با این اصطلاح در سراسر جاوا اسکریپت زیاد مواجه خواهید شد. ساختار زیر داری Arity 3 است.

 function getName(first, middle, last){

return first+' '+ middle +' '+last;
}

• Anonymous

Anonymous یک صفت است. هنگامی که چیزی یا کسی دارای صفت Anonymous است به این معنی است که نام آن فرد یا چیز نامشخص است. بنابراین در جاوا اسکریپت یک ساختار Anonymous یک ساختار بدون نام مشخص است.

(function (){
//body
})();

• Closure

در فرهنگ لغت آکسفورد برای کلمه Closure تعریفی ارائه شد است: "چیزی که بسته شده است و یا بستن چیزی مانند کلاه یا کراوات ".

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

closure ها در جاوا اسکریپت مشابه پیشخدمت ها در رستوران هستند. در رستوران ما اجازه رفتن به آشپزخانه را نداریم بنابراین برای سفارش غذا پیشخدمت را صدا کرده و به آنها سفارش می دهیم. آنها سفارش ما را به آشپزخانه برده و غذای ما را می آورند. و ما بدون شکستن قوانین، غذای خود را دریافت می کنیم. در جاوا اسکریپت نیز closure ها پارامترهای مورد نظر ما را دریافت می کنند و تغییرات را در داخل تابعی که اعمال تغییرات توسط شخص ما مجاز نیست ایجاد می کنند.

 function order() {
var food;
function waiter(order) {
chef(order);
return food;
}
function chef(order) {
if (order === 'pasta') {
food = ['pasta', 'gravy', 'seasoning'];
cook();
}
}
function cook() { food.push('cooked'); }
return waiter;
}
var myOrder = order();
console.log(myOrder('pasta'));
// Array [ "pasta", "gravy", "seasoning", "cooked" ]

• Hoisting

Hoisting به معنای بالا بردن چیزی است. Hoisting در جاوا اسکریپت نیز به همین معنی است و هرچیزی که بالا می رود declaration نامیده می شود. Declaration جایی است که متغیر ها و توابع با کلمات کلیدی متنوع و ساختار ساخته می شوند. مهم نیست که شما کجا کد اعلام تابع یا متغیر را یادداشت می کنید، در طول ارزیابی تمام Declaration ها به داخل محدوده ای که در آن ساکن هستند منتقل می شوند. از این رو، نوشتن یک کد کار به همراه کد فراخوانی تابع قبل از تابع Declaration امکان پذیر است.

 var name = 'Velma';
console.log(sayCatchPhrase(name)); //"Jinkies!"

function sayCatchPhrase(name) {
phrases = {
'Fred Flintstone': 'Yabba dabba doo!',
'Velma': 'Jinkies!',
'Razor': 'Bingo!',
'He-Man': 'I Have the Power'
};
return phrases[name];
}

• Mutation

Mutation به معنی تغییر و یا اصلاح است. اگر تا کنون در جاوا اسکریپت با اصطلاح Mutation مواجه شده اید، احتمالا به تغییراتی در عناصر DOM اشاره دارد.

• Pragma

Pragma مخفف کلمه pragmatic information به معنی اطلاعات عملی است. به زبان انگلیسی ساده، pragmatic یک صفت است که به معنای معقول و عملی است. در برنامه نویسی، pragma به کدی که شامل اطلاعات مفید در مورد چگونگی پردازش برنامه توسط یک مولف یا مفسر یا همگذار است اشاره دارد.

این هیچ ارتباطی به زبان برنامه نویسی ندارد وترکیب آن می تواند متفاوت باشد. آنها فقط در رفتار مولف تاثیر می گذارد. جاوا اسکریپت دارای چندین pragma است، یکی از آنها strict است.


 "use strict";

توسط pragma بالا، کد جاوا اسکریپت در حالت strict اجرا می شود. در حالت strict، ترکیب نا مناسب مجاز نیست، hoisting اجرا نمی شود، خطاهای بی صدا نشان داده می شوند، و غیره. که در نوشتن یک کد جاوا اسکریپت امن تر و بهینه سازی شده کمک می کند.

• Sentinel

Sentinel به معنی سربازی است که نگهبانی می دهد. در برنامه نویسی، Sentinel به این دلیل که در پایان حلقه یا فرآیند استفاده می شوند، دارای ارزش هستند. آنها همچنین "flags" نیز نامیده می شوند. شما می توانید از هر مقدار معقولی به عنوان Sentinel استفاده کنید.

 function getPos(ary, val) {
var i=0, len=ary.length;
for(;i<len;i++){
if(ary[i]===val) return i+1;
}
return -1;
}
console.log(getPos(['r','y','w'],'y')); //2
console.log(getPos(['r','y','w'],'g')); //-1

• Vanilla

Vanilla در جاوااسکریپت به معیار جاوا اسکریپت اشاره دارد نه به چهارچوب. Vanilla در حقیقت نه تنها برای توصیف نسخه استاندارد جاوا اسکریپت استفاده می شود بلکه در سایر زبان های برنامه نویسی مانن css نیز کاربرد دارد.

ارسال نظر و نظرات ثبت شده