value in prototype will be shared with all instances while the one set in constructor is for each instance independent.
Wrong example
function F(){}
F.prototype.x=1;
a = new F();
b = new F();
a.x = 2;
alert(b.x); //outputs 2 - EDIT: actually 1
EDIT: this is correct:
F = function (){ this.x = {value:1}}
a = new F();
b = new F();
a.x.value = 2;
alert(b.x.value); //outputs 1
//-------------------------------
F = function F(){}
F.prototype.x={value:1};
a = new F();
b = new F();
a.x.value = 2;
alert(b.x.value); //outputs 2
or this:
F = function (){ this.x = 1}
a = new F();
a.x = 2;
delete a.x;
alert(a.x); //outputs undefined (empty string)
F = function F(){}
F.prototype.x=1;
a = new F();
a.x = 2;
delete a.x;
alert(a.x); //outputs 1