8.17 Object.keys(), Object.values() and Object.entries()

 

Object.keys()

এই মেথডের মাধ্যমে একটা অবজেক্টের enumerable প্রোপার্টি নামগুলোকে pair করে অ্যারে আকারে রিটার্ন করে।

Example-1:

const obj = {
  name : ‘Random’,
  age : 38,
  married: false
};

console.log(Object.keys(obj));
Output: ['name', 'age', 'married']

 

Example 2:

const arr = ['a', 'b', 'c'];
console.log(Object.keys(arr));

Output: 
['0', '1', '2']

Example 3: 

const obj = { 0: 'a', 1: 'b', 2: 'c', 3: 'd' };
console.log(Object.keys(obj));

Output: 
['0', '1', '2', '3']

Example 4: 

console.log(Object.keys('hello')); 

Output:
In ES5, TypeError: 'hello' is not an object
In ES2015+, ['0', '1', '2', '3', '4']

 

 

Object.Values()

এই মেথডের মাধ্যমে একটা অবজেক্টের enumerable প্রোপার্টি ভ্যালুগুলোকে pair করে অ্যারে আকারে রিটার্ন করে।

Example 1:

const obj = {
  name : ‘Random’,
  age : 38,
  married: false
};

console.log(Object.values(obj));
Output: ['Random', 38, false]

Example 2:

const arr = ['a', 'b', 'c'];
console.log(Object.values(arr));

Output: 
['a', 'b', 'c']

Example 3:

const obj = { 0: 'a', 1: 'b', 2: 'c', 3: 'd' };
console.log(Object.values(obj));

Output: 
['a', 'b', 'c', 'd']

Example 4:

console.log(Object.values('hello')); 

Output:
['h', 'e', 'l',  'l',  'o']

 

Object.entries()

এই মেথডের মাধ্যমে একটা অবজেক্টের enumerable প্রোপার্টি key, value গুলোকে pair করে অ্যারে আকারে রিটার্ন করে।

Example-1:

const obj = {
  name : ‘Random’,
  age : 42
};
for (const [key, value] of Object.entries(obj)) {
  console.log(`${key} => ${value}`);
}

Output:
'name => Random'
'age => 42'

Example 2:

console.log(Object.entries('hello')); 

Output:
[ ['0', 'h'], ['1', 'e'], ['2', 'l'], ['3', 'l'], ['4', 'o'] ]

 

Example 3:

console.log(Object.entries(999)); 

Output:
[ ]
// যেহেতু প্রিমিটিভ টাইপের কোনো নিজস্ব প্রোপার্টি থাকে না, তাই string ছাড়া অন্যদের ক্ষেত্রে empty array রিটার্ন করে।