0
JavaScript는 실제로 객체의 경우 이상하게 작동합니다. 그것이 올바른 행동인지 잘 모르겠지만.JavaScript 객체는 새 객체에도 이전 값을 저장합니다.
새 Object() 내부에서 객체의 일부 속성을 설정합니다. 다음 번에 새로운 Object()를 다시 할 때, 기본값 대신에 이전 인스턴스에서 설정된 값을 얻습니다. 아하.
5
10
나는 그것이 것으로 기대했다 : - -이 :
5
5
이유는 예를 아래
명확하게
function testo() {}
testo.prototype = {
obj: {
what: {
value: 5
}
},
done: function() {
console.log(this.obj.what.value);
this.obj.what = {value: 10};
}
};
var x = new testo();
x.done();
var y = new testo();
y.done();
문제 위의 코드의 출력입니다 설명? 나는 새로운 Class()를 생성하고 이전 인스턴스에서 'this'를 사용하여 값을 설정했기 때문에 정적이 아니며 그 안에있는 모든 객체의 기본 속성이 표시되어야합니다.
위 예제를 데모로 만들었습니다. 내 도서관에서이 문제에 직면하고 있습니다. 객체와 관련이 있다는 것은 참조로 저장된다는 것을 알고 있습니다.
예상되는 출력을 얻으려면 어떻게해야합니까? 이견있는 사람?
예