Complete Map Reference
புதுப்பிப்பு தகவல்:
ஜூலை 2025 இல் புதுப்பிக்கப்பட்டது
இந்த குறிப்பு JavaScript Map பொருளின் அனைத்து முறைகள் மற்றும் பண்புகளின் முழுமையான பட்டியலை வழங்குகிறது.
| முறை | விளக்கம் |
|---|---|
| new Map() | ஒரு புதிய Map பொருளை உருவாக்குகிறது |
| clear() | Map இலிருந்து அனைத்து உறுப்புகளையும் நீக்குகிறது |
| delete() | ஒரு விசையால் குறிப்பிடப்பட்ட Map உறுப்பை நீக்குகிறது |
| entries() | Map இல் [key, value] ஜோடிகளுடன் ஒரு மீள்வி பொருளைத் தரும் |
| forEach() | Map இல் உள்ள ஒவ்வொரு key/value ஜோடிக்கும் ஒரு callback ஐ அழைக்கிறது |
| get() | Map இல் ஒரு விசைக்கான மதிப்பைப் பெறுகிறது |
| groupBy() | திரும்பப் பெறப்பட்ட callback மதிப்புகளுக்கேற்ப பொருள் உறுப்புகளை குழுக்களாகப் பிரிக்கிறது |
| has() | ஒரு விசை Map இல் இருந்தால் true ஐத் தரும் |
| keys() | Map இல் உள்ள விசைகளுடன் ஒரு மீள்வி பொருளைத் தரும் |
| set() | Map இல் ஒரு விசைக்கான மதிப்பை அமைக்கிறது |
| size | Map உறுப்புகளின் எண்ணிக்கையைத் தரும் |
| values() | Map இல் உள்ள மதிப்புகளின் மீள்வி பொருளைத் தரும் |
Method Categories
உருவாக்கம் & அடிப்படை செயல்பாடுகள்
new Map(), set(), get(), has(), delete(), clear()
மீள்வு முறைகள்
keys(), values(), entries(), forEach()
தகவல் முறைகள்
size, groupBy()
Important Methods Details
Creating and Using Maps
// புதிய Map உருவாக்கம்
const myMap = new Map();
// மதிப்புகளை அமைத்தல்
myMap.set('name', 'John');
myMap.set('age', 30);
// மதிப்புகளைப் பெறுதல்
console.log(myMap.get('name')); // 'John'
// விசை இருப்பதைச் சரிபார்க்கிறது
console.log(myMap.has('age')); // true
// உறுப்பை நீக்குதல்
myMap.delete('age');
// அனைத்தையும் அழித்தல்
myMap.clear();
Iterating Through Maps
const fruits = new Map([
['apples', 500],
['bananas', 300],
['oranges', 200]
]);
// forEach() முறை
fruits.forEach((value, key) => {
console.log(key + ' = ' + value);
});
// entries() முறை
for (const [key, value] of fruits.entries()) {
console.log(key, value);
}
// keys() முறை
for (const key of fruits.keys()) {
console.log(key);
}
// values() முறை
for (const value of fruits.values()) {
console.log(value);
}
Map vs Object Comparison
| அம்சம் | Map | Object |
|---|---|---|
| விசை வகைகள் | எந்த மதிப்பும் (பொருள்கள், செயல்பாடுகள், பழமையானவை) | சரம் அல்லது Symbol மட்டுமே |
| விசை வரிசை | சேர்க்கப்பட்ட வரிசையில் பாதுகாக்கப்படுகிறது | எந்த குறிப்பிட்ட வரிசையும் இல்லை |
| அளவு | size பண்பு மூலம் எளிதாகப் பெறலாம் |
மனக்கணக்கில் கணக்கிட வேண்டும் |
| மீள்வு | நேரடியாக மீள்வு செய்யக்கூடியது | முதலில் விசைகளைப் பெற வேண்டும் |
| செயல்திறன் | அடிக்கடி சேர்க்க/நீக்க செயல்பாடுகளுக்கு சிறந்தது | நிலையான அமைப்புகளுக்கு சிறந்தது |
Practical Examples
Example 1: User Session Management
// பயனர் அமர்வுகளை நிர்வகிக்க Map ஐப் பயன்படுத்துதல்
const userSessions = new Map();
// பயனர் உள்நுழையும் போது
function userLogin(userId, sessionData) {
userSessions.set(userId, {
...sessionData,
loginTime: new Date(),
lastActive: new Date()
});
}
// பயனர் செயல்பாட்டைப் புதுப்பித்தல்
function updateUserActivity(userId) {
if (userSessions.has(userId)) {
const session = userSessions.get(userId);
session.lastActive = new Date();
userSessions.set(userId, session);
}
}
// அனைத்து செயலில் உள்ள பயனர்களையும் பெறுதல்
function getActiveUsers() {
return Array.from(userSessions.entries());
}
// உள்நுழைந்த பயனரின் எண்ணிக்கை
console.log(userSessions.size);
Example 2: Product Inventory
// தயாரிப்பு சரக்கு நிர்வாகம்
const inventory = new Map();
// தயாரிப்புகளைச் சேர்க்கிறது
inventory.set('LAP001', { name: 'Laptop', price: 999.99, quantity: 50 });
inventory.set('PHO001', { name: 'Smartphone', price: 699.99, quantity: 100 });
inventory.set('TAB001', { name: 'Tablet', price: 399.99, quantity: 75 });
// தயாரிப்பு விவரங்களைப் பெறுதல்
function getProductInfo(productId) {
return inventory.get(productId);
}
// அனைத்து தயாரிப்புகளையும் பட்டியலிடுதல்
function listAllProducts() {
let output = '';
inventory.forEach((product, id) => {
output += `${id}: ${product.name} - $${product.price} (${product.quantity} in stock)\n`;
});
return output;
}
// பங்கு சரிபார்த்தல்
function checkStock(productId, requestedQuantity) {
const product = inventory.get(productId);
if (!product) return false;
return product.quantity >= requestedQuantity;
}
Browser Support
Map ES6 (ECMAScript 2015) இல் அறிமுகப்படுத்தப்பட்டது மற்றும் அனைத்து நவீன உலாவிகளிலும் ஆதரிக்கப்படுகிறது:
| உலாவி | ES6 ஆதரவு | குறிப்பு |
|---|---|---|
| Chrome | 51+ | மே 2016 முதல் முழு ஆதரவு |
| Firefox | 54+ | ஜூன் 2017 முதல் முழு ஆதரவு |
| Safari | 10+ | செப்டம்பர் 2016 முதல் முழு ஆதரவு |
| Edge | 15+ | ஏப்ரல் 2017 முதல் முழு ஆதரவு |
| Opera | 38+ | ஜூன் 2016 முதல் முழு ஆதரவு |
பழைய உலாவி ஆதரவு:
IE11 போன்ற பழைய உலாவிகளுக்கு, Babel போன்ற டிரான்ஸ்பிலர் ES6 குறியீட்டை பழைய JavaScript க்கு மாற்ற பயன்படுத்தப்படலாம்.
Learn More
JavaScript Maps
Map களின் அடிப்படைகளைக் கற்றுக்கொள்ளுங்கள்
JavaScript Map Methods
Map முறைகளை விரிவாக அறியவும்
JavaScript Weak Maps
WeakMap பற்றி அறியவும்
JavaScript Sets
Set தரவு கட்டமைப்பைக் கற்றுக்கொள்ளுங்கள்
JavaScript Map Reference பயிற்சி
பின்வரும் குறியீட்டைக் கவனியுங்கள்:
const myMap = new Map();
myMap.set('a', 1);
myMap.set('b', 2);
myMap.set('c', 3);
myMap.delete('b');
மேலே உள்ள குறியீட்டை இயக்கிய பிறகு myMap.size இன் மதிப்பு என்ன?