JavaScript delete operator: variables vs object properties

 Why delete Works Here… But Not There This morning’s code was: let x = 10; const obj = { x: 20 }; delete x; delete obj.x; console.log(x); console.log(obj.x); 💡 Correct Output 10 undefined 🧠 Simple Explanation : 🔹 Line 1: delete x; Here’s the important rule 👇 👉 delete cannot remove variables declared with let, const, or var. So this line: delete x; does nothing. x still exists with value 10. ✔ Output: 10 🔹 Line 2: delete obj.x; Now this is different 👀 obj.x is a property of an object delete can remove object properties So after: delete obj.x; The property x no longer exists on obj. Accessing it returns: undefined ✔ Output: undefined 🎯 Key Takeaways : delete ❌ does NOT work on variables delete ✅ works on object properties Removing a property ≠ setting it to undefined let / const variables are protected from deletion 📌 That’s why delete is mostly used with objects, not variables. 💬 Your Turn Did you expect both deletes to work? 😄 Comment “Surprised 😮” or “Knew this 👍” #JavaScript #LearnJS #FrontendDevelopment #CodingInterview #Objects #TechWithVeera #WebDevelopment

  • graphical user interface, application

To view or add a comment, sign in

Explore content categories