Simple example:
{
color: 'red',
getColor: function() { return this.color; },
}
You cannot reference a field in an object from one of its methods in a generic way without using this or passing the object's ref as a parameter - which is redundant, because you already have this.
As such, this is an important part of the language. Also, let me copy and paste an answer from another thread about a programming concept:
It's a concept. A tool. Just like a hammer. You can use it in some situations, and it will work perfectly - like when you want to put a nail in the wall. However, in other situations, you should get another tool... like when you want to put a screw into the wall.
Most of the time, the problem sits in front of the computer ;)
btw, that answer gets a lot too much attention for what it reads