5

I need to delete one object in my case. so i am using "delete" keyword but after using it, I am able get the value again

var test= {};
test[0]="111";
test[1]="555";
delete test;
alert(test[0])

5 Answers 5

7

You can't delete a local variable that has been declared with var.

You can only delete properties of objects - this happens to also include global variables which are implicit properties of the window object.

Sign up to request clarification or add additional context in comments.

Comments

6

As has been mentioned, you can't delete a variable that has been declared with var.

For example, if you were to change your code to the following - so that test is an explicit property of window - the delete will work.

window.test = [];
window.test[0]="111";
window.test[1]="555";
delete window.test;
alert(window.test[0]);

Comments

5

You can delete properties on objects, you can't delete variables.

Either assign undefined or let the variable fall out of scope.

Comments

1

Whenever delete, it returns a boolean that tells wether it could delete the var or not. In this case, it returns false:

delete test;    // false

You can just set test to undefined:

test = undefined;

Comments

0

you can use test = undefined to make remove object value

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.