'console'은 키워드(예약어)가 왜 아닐까?

'console'은 키워드(예약어)가 왜 아닐까?

키워드(예약어)는,

자바스크립트 내부에서 사용중이며, 특별한 의미를 가지고 있어서

변수나 함수 이름으로 사용할 수 없는 단어 를 의미한다.

그렇다면, 자주사용하는 'console'이라는 식별자도 중복해서 사용할 수 없는 단어이기 때문에

키워드(예약어)이지 않을까?

MDN Web Docs > 키워드 부분을 찾아봤지만...

MDN Web Docs 의 Keywords

'console'은 보이지 않았다.

그렇다면 'console'은 식별자로 사용할 수 없는 단어이지만 키워드(예약어)가 아니라는 의미인데...

typeof를 이용해서 정체를 찾아보자!

console.log(typeof(console)); // Object

객체로 나온다.

그렇다면 내가 직접 커스텀이 가능할까?

console.newProp = (...arg) => { console.log(arg); }; console.newProp(1, 2, 3); // [1, 2, 3] console = null; console; // null

프로퍼티도 추가되고, null값을 넣어 초기화도 시킬 수 있다.

> 정리.

'console'은 자바스크립트에서

디버그콘솔에 접근할 수 있는 편리한 기능들을 미리 만들어놓은 '객체' 일 뿐 이다.

키워드(예약어)들은 직접 다른 변화를 줄 수 있는 '객체'의 형태가 아닌,

자바스크립트에서 직접 지정하고 약속한 단어 그 자체인 것 이다.

(이게 맞나요?)

from http://qudtn3792.tistory.com/1 by ccl(A) rewrite - 2021-12-27 16:01:29