[FE] console.log 트랩
Chrome 버전 59.03071.86(공식 버전)(64비트)
const x = [];
console.log(x);
x.push(1);
console.log(x);
이 두 로그는 콘솔에 다음과 같이 표시됩니다.
→ []
→ [1]
우리는 컨트롤 데스크톱
>
을 클릭하면 결과를 볼 수 있습니다.↓ []
0: 1
length: 1
→ __proto__: Array(0)
↓ [1]
0: 1
length: 1
→ __proto__: Array(
펼친 뒤 본 내용은
x
의 최종 결과다.→ []
와 → [1]
는 전개되지 않을 때 구분할 수 있지만 일부 상황은 구분할 수 없다.const y = { a: { b: 0 } };
console.log(y);
y.a.b = 1;
console.log(y);
콘솔에 표시된 결과는 구분할 수 없습니다.
→ Object {a: Object}
→ Object {a: Object}
콘솔에서 펼쳐진 결과도 구분할 수 없고,
↓ Object {a: Object}
↓ a: Object
b: 1
→ __proto__: Object
→ __proto__: Object
↓ Object {a: Object}
↓ a: Object
b: 1
→ __proto__: Object
→ __proto__: Object
이럴 때는 콘솔에 주의해야 한다.log의 함정이야, console.log는 인용 방식으로 대상을 인쇄합니다. 한 대상의 속성 값은 복사되지 않고 컨트롤러에서 대응하는 결과 값을 볼 수 있습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.