Bird
Raised Fist0
Javascriptprogramming~10 mins

Adding and removing properties in Javascript - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Adding and removing properties
Start with object
↓
Add property: obj.key = value
↓
Check object properties
↓
Remove property: delete obj.key
↓
Check object properties again
↓
End
We start with an object, add a property, check it, then remove the property and check again.
Execution Sample
Javascript
const obj = {};
obj.name = "Alice";
delete obj.name;
console.log(obj);
This code creates an empty object, adds a 'name' property, removes it, then prints the object.
Execution Table
StepCode executedObject stateExplanation
1const obj = {};{}Created an empty object with no properties.
2obj.name = "Alice";{"name": "Alice"}Added property 'name' with value 'Alice'.
3delete obj.name;{}Removed property 'name' from the object.
4console.log(obj);{}Printed the object, now empty again.
💡 All steps executed; object ends empty after adding and removing property.
Variable Tracker
VariableStartAfter Step 2After Step 3Final
obj{}{"name": "Alice"}{}{}
Key Moments - 2 Insights
Why does the object become empty after deleting the property?
Because deleting the property removes it completely from the object, as shown in step 3 of the execution_table where the object state changes from having 'name' to being empty.
Can we add a property using dot notation like obj.name = value?
Yes, as shown in step 2, dot notation adds a new property to the object easily.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the object state after step 2?
A{"age": 30}
B{"name": "Alice"}
C{}
Dundefined
💡 Hint
Check the 'Object state' column for step 2 in the execution_table.
At which step does the object lose the 'name' property?
AStep 3
BStep 2
CStep 1
DStep 4
💡 Hint
Look at the 'Code executed' and 'Object state' columns in the execution_table.
If we skip the delete line, what would console.log(obj) show?
A{}
Bundefined
C{"name": "Alice"}
DError
💡 Hint
Refer to the object state after step 2 in the execution_table.
Concept Snapshot
Adding properties: obj.key = value
Removing properties: delete obj.key
Adding creates or updates a property
Deleting removes the property completely
Object reflects changes immediately
Full Transcript
We start with an empty object. Then we add a property 'name' with value 'Alice' using dot notation. The object now has one property. Next, we remove the 'name' property using the delete keyword. The object becomes empty again. Finally, we print the object to see it is empty. This shows how to add and remove properties in JavaScript objects.

Practice

(1/5)
1.

Which of the following is the correct way to add a new property age with value 25 to an existing object person?

easy
A. person.age = 25;
B. add person.age = 25;
C. person->age = 25;
D. person(age) = 25;

Solution

  1. Step 1: Understand how to add properties in JavaScript objects

    Properties are added by assigning a value to object.property.
  2. Step 2: Check each option's syntax

    Only person.age = 25; uses correct JavaScript syntax to add a property.
  3. Final Answer:

    person.age = 25; -> Option A
  4. Quick Check:

    Adding property = person.age = 25 [OK]
Hint: Use dot notation: object.property = value to add [OK]
Common Mistakes:
  • Using invalid syntax like 'add' keyword
  • Using arrow or parentheses incorrectly
  • Trying to call property as a function
2.

Which of the following lines correctly removes the property color from the object car?

easy
A. car.color = null;
B. remove car.color;
C. car.delete(color);
D. delete car.color;

Solution

  1. Step 1: Recall how to remove properties in JavaScript

    The delete keyword removes a property from an object.
  2. Step 2: Verify each option

    Only delete car.color; correctly removes the property.
  3. Final Answer:

    delete car.color; -> Option D
  4. Quick Check:

    Remove property = delete object.property [OK]
Hint: Use 'delete object.property;' to remove properties [OK]
Common Mistakes:
  • Using 'remove' keyword which doesn't exist
  • Assigning null instead of deleting
  • Calling delete as a method
3.

What will be the output of the following code?

const obj = {a: 1};
obj.b = 2;
delete obj.a;
console.log(obj);
medium
A. {a: 1, b: 2}
B. {b: 2}
C. {a: undefined, b: 2}
D. {}

Solution

  1. Step 1: Add property 'b' to object

    After obj.b = 2;, object is {a:1, b:2}.
  2. Step 2: Delete property 'a'

    delete obj.a; removes property 'a', so object becomes {b:2}.
  3. Final Answer:

    {b: 2} -> Option B
  4. Quick Check:

    Delete removes property completely [OK]
Hint: Deleting removes property; it doesn't set undefined [OK]
Common Mistakes:
  • Thinking delete sets property to undefined
  • Expecting original property to remain
  • Confusing object output format
4.

Find the error in the following code that tries to remove the name property from user:

const user = {name: 'Alice', age: 30};
remove user.name;
medium
A. The keyword remove is invalid in JavaScript.
B. The property name cannot be deleted.
C. The object user is not defined.
D. The property should be set to null instead.

Solution

  1. Step 1: Check the keyword used for deletion

    JavaScript uses delete, not remove, to delete properties.
  2. Step 2: Confirm object and property validity

    user is defined and name is a valid property.
  3. Final Answer:

    The keyword remove is invalid in JavaScript. -> Option A
  4. Quick Check:

    Use 'delete' keyword, not 'remove' [OK]
Hint: Use 'delete' keyword to remove properties, not 'remove' [OK]
Common Mistakes:
  • Using 'remove' instead of 'delete'
  • Trying to set property to null to delete
  • Assuming property can't be deleted
5.

You have an object settings with properties {theme: 'dark', fontSize: 14, showSidebar: true}. You want to remove showSidebar only if it exists, then add a new property language with value 'en'. Which code correctly does this?

hard
A.
settings.showSidebar = undefined;
settings.language = 'en';
B.
delete settings.showSidebar;
settings.language == 'en';
C.
if ('showSidebar' in settings) {
  delete settings.showSidebar;
}
settings.language = 'en';
D.
if (settings.showSidebar) {
  settings.showSidebar = null;
}
settings.language = 'en';

Solution

  1. Step 1: Check if property exists before deleting

    Using 'showSidebar' in settings ensures property exists before deletion.
  2. Step 2: Add new property correctly

    settings.language = 'en'; adds the new property properly.
  3. Step 3: Verify other options

    delete settings.showSidebar;
    settings.language == 'en';
    uses wrong comparison operator == instead of assignment =.
    settings.showSidebar = undefined;
    settings.language = 'en';
    sets property to undefined but does not remove it.
    if (settings.showSidebar) {
      settings.showSidebar = null;
    }
    settings.language = 'en';
    sets property to null but does not remove it.
  4. Final Answer:

    if ('showSidebar' in settings) { delete settings.showSidebar; } settings.language = 'en'; -> Option C
  5. Quick Check:

    Check existence, delete, then add property [OK]
Hint: Check property with 'in' before delete; assign new property with '=' [OK]
Common Mistakes:
  • Using '==' instead of '=' for assignment
  • Setting property to undefined or null instead of deleting
  • Not checking if property exists before deleting
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard