នៅក្នុងភាសា JavaScript ដែលហៅថា ដែនកំណត់ក្នុង (local scope) គឺជាទីកន្លែងទាំងឡាយណា ដែលស្ថិតនៅក្នុងក្បួន។ ហើយដើម្បីបង្កើតវត្ថុនិងឬអថេរផ្សេងៗ នៅក្នុងដែនកំណត់ក្នុង យើងត្រូវធ្វើដូចខាងក្រោមនេះ៖
function getProfit(){
//ការបង្កើតទិន្នន័យក្នុងដែនកំណត់ក្នុង
var money = [2000, 1500];
var sale = money[0];
var purchase = money[1];
var profit = sale - purchase;
console.log('ប្រាក់ចំណេញទាំងអស់គឺៈ '+profit);
}
getProfit();
នៅលើបន្ទាត់លេខ 3 ការសរសរថា var money = [2000, 1500] គឺជាបញ្ជាតម្រូវឲ្យបង្កើតកម្រងមួយមានឈ្មោះថា money ដែលជាវត្ថុស្ថិតនៅក្នុងដែនកំណត់ក្នុង ព្រោះវាត្រូវបានបង្កើតឡើងនៅក្នុងក្បួន។
នៅក្នុងភាសា JavaScript គ្រប់វត្ថុនិងឬអថេរនៅក្នុងដែនកំណត់ក្នុង ត្រូវបានបង្កើតឡើង នៅពេលដែលក្បួនត្រូវបានយកទៅប្រើ និងត្រូវបានលុបចេញវិញ នៅពេលដែលក្បួនត្រូវបានប្រើរួចហើយ។ ជាក់ស្តែង នៅក្នុងកម្មវិធីខាងលើនេះ កម្រងឈ្មោះ money ត្រូវបានបង្កើតឡើងនៅក្នុងដែនកំណត់ក្នុង នៅពេលដែលក្បួនឈ្មោះ getProfit ត្រូវបានយកទៅប្រើ និងត្រូវលុបចេញវិញ នៅពេលដែលក្បួននោះត្រូវបានប្រើរួចហើយ។ ក៏ប៉ុន្តែ បើសិនជាវត្ថុនោះ ត្រូវបានបញ្ជូនចេញទៅកាន់ដែនកំណត់ក្រៅ វត្ថុនោះនឹងមិនត្រូវបានលុបចោលឡើយ នៅពេលដែលក្បួនត្រូវបានប្រើរួចហើយនោះ។ ពិនិត្យកម្មវិធីខាងក្រោមនេះ៖
function getProfit(){
//ការបង្កើតទិន្នន័យក្នុងដែនកំណត់ក្នុង
var money = [2000, 1500];
var sale = money[0];
var purchase = money[1];
var profit = sale - purchase;
console.log('ប្រាក់ចំណេញទាំងអស់គឺៈ '+profit);
return money;
}
/*ការយកក្បួន getProfit មកប្រើដែលជាកត្តាធ្វើអោយ
កំរង money ត្រូវបញ្ជូនចេញទៅក្រៅក្បួន*/
var fee = getProfit();
console.log(fee);
នៅលើបន្ទាត់លេខ 13 ការសរសេរថា var fee = getProfit() គឺជាបញ្ជាតម្រូវឲ្យភ្ជាប់ឈ្មោះ fee ទៅនឹងអថេរដែលក្បួនឈ្មោះ getProfit បញ្ជូនមក។ អថេរឈ្មោះ fee នេះ គឺជាអថេរឈ្មោះ profit ដែលត្រូវបានបង្កើតឡើង នៅក្នុងក្បួនឈ្មោះ getProfit ។ ដូចនេះ អថេរឈ្មោះ profit មិនត្រូវបានលុបចោលឡើយ ទោះបីជាវាត្រូវបានបង្កើតឡើងនៅក្នុងក្បួនក៏ដោយ ព្រោះវាត្រូវបានបញ្ជូនចេញផុតពីក្នុងក្បួនរួចទៅហើយ៕