Remove elements from a Dictionary using Javascript

In JavaScript, there are multiple ways to remove elements from dictionary-like structures. This depends on whether you're working with plain objects, custom dictionary classes, or ES6 Maps.

Using delete Operator with Objects

For plain JavaScript objects acting as dictionaries, use the delete operator:

const dict = {
    key1: "value1",
    key2: "value2",
    key3: "value3"
};

console.log("Before deletion:", dict);

delete dict.key2;

console.log("After deletion:", dict);
console.log("key2 exists:", "key2" in dict);
Before deletion: { key1: 'value1', key2: 'value2', key3: 'value3' }
After deletion: { key1: 'value1', key3: 'value3' }
key2 exists: false

Custom Dictionary Class Method

When implementing a custom dictionary class, check if the key exists before deletion:

class MyDictionary {
    constructor() {
        this.container = {};
    }
    
    put(key, value) {
        this.container[key] = value;
    }
    
    hasKey(key) {
        return key in this.container;
    }
    
    delete(key) {
        if(this.hasKey(key)) {
            delete this.container[key];
            return true;
        }
        return false;
    }
    
    display() {
        console.log(this.container);
    }
}

const myDict = new MyDictionary();
myDict.put("key1", "value1");
myDict.put("key2", "value2");

myDict.display();
console.log("Deleted key2:", myDict.delete("key2"));
myDict.display();
{ key1: 'value1', key2: 'value2' }
Deleted key2: true
{ key1: 'value1' }

Using ES6 Map.delete()

ES6 Maps provide a built-in delete() method that returns true if the key existed:

const myMap = new Map([
    ["key1", "value1"],
    ["key2", "value2"],
    ["key3", "value3"]
]);

console.log("Before deletion:");
console.log("key1 exists:", myMap.has("key1"));
console.log("key2 exists:", myMap.has("key2"));

const wasDeleted = myMap.delete("key2");

console.log("After deletion:");
console.log("key1 exists:", myMap.has("key1"));
console.log("key2 exists:", myMap.has("key2"));
console.log("Deletion successful:", wasDeleted);
Before deletion:
key1 exists: true
key2 exists: true
After deletion:
key1 exists: true
key2 exists: false
Deletion successful: true

Comparison of Methods

Method Structure Returns Performance
delete operator Plain objects Boolean Good
Custom delete method Custom classes Custom (Boolean) Good
Map.delete() ES6 Map Boolean Excellent

Conclusion

Use the delete operator for plain objects, implement custom deletion methods for dictionary classes, or leverage ES6 Map's built-in delete() method. Always check the return value to confirm successful deletion.

Updated on: 2026-03-15T23:18:59+05:30

25K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements