얼마전 방 구석 한켠에 쌓여있던 짐들을 정리해야겠다는 마음을 먹고, 뽀얗게 쌓인 먼지와 사투를 벌이며 물건을 하나씩 들추어 보았다. 오랜시간 동안 쌓였던 기억을 더듬어보듯이, 물건을 하나씩 들출 때마다 예전의 기억이 새록새록 떠올랐다. 손끝이 물건에 스칠 때마다 기억의 한 조각이 눈 앞에 펼쳐지는 듯, 과거로 돌아가 그 때의 나를 만날 수 있었다. 그 때 낯선 물건 하나를 발견하였다. 빈틈 투성이, 완벽하게 구성되어 있지 않은 퍼즐이었다. 군데군데 비어있는 다 채워지지 않은 퍼즐의 모습은 아직은 부족하고 빈틈 투성이인 나를 보는 듯 했다. 누군가는 말한다. "세상의 완벽한 사람은 없다"라고, 여전히 그 믿음을 갖고 인생을 살아가고 있지만, 가끔씩 고개를 갸우뚱하기도 한다. 내가 아직은 세상의 많은 사..
2024년 새해가 밝았다. 매번 느끼는 거지만, 새롭게 시작되는 순간만큼은 열정으로 가득찬 마음과 결의에 가득찬 눈빛, 그리고 떨림으로 가득한 기대감들이 공간을 가득 매운다. 그 다음이 잊혀질 정도로 시작이라는 순간에 집중한다. 그리고 한 발자국을 떼고, 두 발자국을 떼면서 떨림으로 가득했던 공기는 조금씩 희미해져 간다. 탁해지고, 흐릿해져 간다. 새로운 시작은 눈을 씻고 찾아볼 수 없고, 반복의 연속이 삶의 지루함을 가중시킨다. 조금씩 익숙한 타성에 젖어들기 시작하고, 열,스물 발자국을 걸어갔을 때 흐리멍텅한 눈빛과 나태함의 굴레속으로 끌려가는 나 자신을 보기 시작한다. 새롭게 시작되는 순간을 2024년이 시작되는 오늘 하루가 아닌 오랫동안 느끼도록 하기 위해선 어떠한 계획을 세워야 할까? 다채롭고 풍..
JavaScript의 배열은 객체이며, 1개 변수에 여러 개의 값을 순차적으로 저장할 때 사용한다. 또한 다른 프로그램 언어와는 달리 문자열, 숫자, 객체 심지어 다른 배열이나 어떤 타입의 값이라도 담을 수 있다. 또한 배열 크기는 미리 정하지 않고도 선언 할 수 있으며, 원하는 값만 추가하면 된다. 배열은 Array 생성자로 생성된 Array 타입의 객체이며 프로토타입 객체는 Array.prototype 이다. 또한 배열 자체도 하나의 객체기 때문에 키/프로퍼티 문자열을 추가할 수 있다. 하지만 배열의 크기는 포함되지 않는다. 일반적으로 배열에 키/프로퍼티를 두는 건 추천할 만한 방법이 아니다. 배열은 일반적으로 배열 리터럴 방식( var c = [];)으로 생성하지만, 이 방식도 결국 내장함수 Arr..
JavaScript의 최상위 객체는 아래와 같이 나눠서 설명될 수 있다. Native object: 특정환경(브라우저 등의 클라이언트 프로그램)에 종속되지 않은, ECMAScript 명세의 JavaScript 언어 내장 객체를 말한다. Application 전역의 공통 기능을 제공하며, 런타임 환경과 관계없이 언제나 사용 가능하다. Host object: 주로 웹 브라우저 전용 object나 node js등 런타임 환경에 의해 제공되는 객체이다. window, XmlHttpRequest, DOM 노드 객체 등 런타임 환경에 정의된 객체를 말한다. JavaScript 언어에서 Object(객체)가 정말로 많은 비중을 차지하고 있는 만큼 가장 먼저 공부할 내용도 Object(객체) 중 Native objec..