ករងនិង​​សំណុំ គឺជា​​ទិន្នន័យ​ម៉្យាង​ដែល​នៅ​ក្នុង​នោះ​មាន​ទិន្នន័យ​​​ជា​ច្រើន​ទៀត​។ ទីន្នន័យនៅ​ក្នុង​កំរង​ឬ​សំណុំ ត្រូវ​គេ​ចាត់ទុក​ថា​ធាតុ​​របស់​កំរង​ឬ​សំណុំ​។ នៅ​ក្នុង​ភាសា ES6 គ្រប់​ទិន្នន័យ​​ទាំងឡាយណា​​ ដែល​​មាន​ធាតុ​ជា​​ទិន្នន័យ​មួយ​ចំនួន​ទៀត ត្រូវ​ចាត់ទុក​ថា​ជា ទិន្នន័យសមាស​ (container) ។ ដូចនេះ កំរង​​និង​សំណុំ​ត្រូវ​ចាត់​ទុក​ថា​ជាទិន្នន័យ​សមាស​​ ពីព្រោះ​វា​ជា​ទិន្នន័យដែល​​មាន​ធាតុ​ជា​ច្រើន​ទៀត​នៅ​ក្នុង​នោះ​។

 

ធាតុ​របស់ទិន្នន័យ​សមាស​ អាច​ជា​​ទិន្នន័យ​​​ប្រភេទ​ណា​ក៏​បាន​ដែរ​។ ដូចនេះ ក្រៅ​ពី​លេខ​និង​ប្រយោគ យើង​ក៏​​អាច​យក​ទិន្នន័យ​សមាស​​​ផ្សេង​ៗ​ទៀត មក​ធ្វើ​ជា​ធាតុរបស់​​ទិន្នន័យសមាសណា​មួយ​​​ទៀត​បាន​​ដែរ​​។ ពិនិត្យ​កម្មវិធី​ខាង​ក្រោម​នេះ​៖

 

let dimension1 = [100, 1.75, 16]
let dimension2 = {'បណ្តោយ':100, 'កំពស់':1.75, 'ទទឹង':16}
 
//បង្កើតកំរង​ដែល​មានធាតុ​ជាទិន្នន័យ​សមាស
let list = [dimension1, dimension2]
 
//បង្កើត​​សំណុំដែល​មានធាតុជាទិន្នន័យ​​សមាស
let set = {'label1':dimension1, 'label2':dimension2}
 
console.log(list)
console.log(set)

 

ក្នុង​ករណី​ទិន្នន័យ​សមាស​​​មួយ​មាន​ធាតុ​ជាទិន្នន័យ​សមាស​ផ្សេង​ៗ​ទៀត​ ដើម្បី​ចម្លង​និង​ឬដោះដូរ​ធាតុ​និង​ឬ​​តម្លៃ​នៃ​ទិន្នន័យសមាស​អ​​​ដែល​ជា​ធាតុ​ យើង​ត្រូវ​ធ្វើ​ដូច​ខាងក្រោម​នេះ​៖

 

let dimension1 = [100, 1.75, 16]
let dimension2 = {'បណ្តោយ':100, 'កំពស់':1.75, 'ទទឹង':16}
let list = [dimension1, dimension2];
let set = {'label1':dimension1, 'label2':dimension2}
 
/*ការធ្វើប្រមាណ​វិធីលេខរៀង ដើម្បី​ចំលង​យក​ធាតុ
​នៃ​​កំរង​ដែល​ជា​ធាតុ​​នៃ​​កំរង​មួយ​ទៀត​*/
console.log(list[0][2])
 
/*ការធ្វើប្រមាណ​វិធីលេខរៀង ដើម្បី​ចំលង​យក​ធាតុ
​នៃ​​សំណុំ​ដែល​ជា​ធាតុ​នៃ​​​សំណុំ​​មួយ​ទៀត​*/
console.log(set['label2']['កំពស់'])