본문 바로가기

전체 글45

[node.js] 기초 node.js 노드는 Javascript의 runtime입니다. 즉, Javascript program을 실행가능 하게 함 브라우저에서만 실행되었던 자바스크립트를 독립형 응용 프로그램으로 실행시킬 수 있도록 확장 Event-driven 방식으로써, 비동기 방식으로 동작 Chrome의 Javascript Engine에서 Runtime bulid가 된 후 동작 npm이라는 오픈소스 라이브러리 있음 node.js로 할 수 없는 것들 (브라우저와의 차이점) node.js에는 DOM이 존재하지 않습니다. node.js에는 브라우저와는 달리 window 객체, document 객체가 존재하지 않습니다. window 객체 대신 global 키워드가 존재합니다. 다만 완전히 똑같지는 않습니다. 대부분 스코프 규칙이 모.. 2021. 2. 24.
[JS] 화살표함수 ES6에서 새로 도입한 화살표 함수(arrow function)와 일반 함수를 비교해보면 보통 함수 표현식을 축약한 형태로 표시됩니다. 함수 표현식 const add = function (x, y) { return x + y } 화살표 함수 const add = (x, y) => { return x + y } 화살표 함수는 function 키워드를 화살표로 축약해서 표시할 수 있습니다. 함수의 본문에 return 문만 있는 경우, 화살표 함수는 return 을 생략할 수 있습니다. 이 때 주의해야할 점은 {} 중괄호 (curly brace) 는 사용하면 안됩니다. () 소괄호 (parentheses) 를 사용하는 것은 가능합니다. 이는 일반적인 수식에서의 "괄호 치기" 와 동일합니다. const add .. 2021. 2. 24.
[JS] 고차함수 forEach forEach는 가장 쉬운 배열 내장함수이다. 기존에 배웠던 for 문을 대체 시킬 수 있다. const fruit = ['apple', 'plum', 'mandarin', 'tomato']; for (let i=0; i { console.log(el); }); forEach 함수의 파라미터로는, 각 원소에 대하여 처리하고 싶은 코드를 함수로 넣어준다. 이 함수의 파라미터 el은 각 .. 2021. 2. 24.
210224_ TIL 블로그 글을 작성하면서 느끼는게 있는데 블로그 기록에 너무 집중을 하다보면 공부의 양에서 기억의 비중이 상대적으로 작아지게 된다. 그래서 공부의 효율이 떨어지는 경우가 좀 있었다. 그래서 난 기록을 딱 필요한만큼만 하려고 한다. 키워드위주로 작성하여 나중에 그 키워드를 봤을 때 머리속에 있는 기억이 떠오를정도만.. 인터넷에는 이미 좋은 자료들이 많고 이 블로그는 그냥 나를 위한 도구일뿐이다. 너무 남에게 보여지는 모습만 생각하여 기록에만 집중하다보면 기억것들을 더 많이 만들수 있던 기회를 잃을거같다. 공부의 방식은 개개인마다 달라서 이 방법이 정답은 아니지만 이게 나에겐 잘 맞는 방식인거같다. 기록은 키워드로만 작성하되 코드 한줄 더 입력하고 고민해보며 기억에 더 집중하자 (코드스테이츠 커리큘럼이 너무 .. 2021. 2. 24.
210223_TIL 어제 밤에 전 페어분한테 연락이 왔다. 맥북 m1을 샀는데 nvm을 설치하는 과정에서 자꾸 오류가 난다는거였다. 아무리 검색해봐도 안되신다고.. 가서 오류 메시지를 같이 천천히 살펴봤고 프로그램을 재설치하며 오류가 발생할때마다 인터넷으로 원인을 검색하고 해결하며 결국 설치를 했는데 한시간 반정도 걸린거같다... 전 페어분은 6시간을 넘게 그것때매 고민하고 계셨다고 했는데 너무 고마워했다. 나도 아는거 하나 없었지만 막연하게 두렵기만 하던 오류메시지를 하나씩 읽으며 원인을 해결하는 과정이 이번 일을 해내면서 예전만큼 막연하게 다가오지는 않는거같다. (조금 자신감이 생겼다) 오늘은 어제 배웠던 Git을 응용해보는 과정이였는데 어제 예습을 해서 그런지 전체적으로 쉽게 했다. 처음으로 우리 기수중에 제일 첫번째.. 2021. 2. 23.
[Git] 기초 Git을 쓰는 이유 1. 버전을 관리하기 위해 (파일 하나로 버전을 관리할 수 있다) 2. 두 명 이상의 협업시에 버전을 따로 관리할 수 있고 다시 합치며 관리하는 것이 쉬워진다. 처음 로컬과 원격 저장소 연결 git remote add origin "Repository URL" 처음 로컬과 upstream 연결 git remote add upstream "Repository URL" upstream에서 dev 브랜치 pull git pull upstream dev 1. Git 기본 명령어 - 디렉토리는 우리가 흔히 아는 폴더라고 생각하면 된다 $ pwd - 현재 위치의 경로가 나타난다. $ ls - 현재 디렉토리에 어떤 파일이나 디렉터리가 있는지 확인 파일과 디렉토리의 상세 정보까지 표시하는 옵션을 추.. 2021. 2. 22.
210222_TIL 저번주에 4주차 회고록을 남기면서 두 갈래길에서 고민을 했는데 결국 나는 더 넓은 세상으로 가는 길을 선택했다 ! 상담도 받고 이 얘기 저 얘기 듣다보니 왜 pre로 다시 가는걸 고민했나 싶다.. 오늘 OT도 듣고 내일 수업을 준비하면서 이머시브 코스를 대략적으로 공부해보니 할수있을것같다. 그냥 열심히 하면 안한것보단 낫겠지 싶다 잡생각 버리고 최선을 다해보자...! 오늘 배운것 패키지 매니저 (다른 프로그램에 의존하지 않는 설치 프로그램) macOS: homebrew brew 명령어 프로그램 검색: brew search 검색어 프로그램 정보 확인: brew info 프로그램이름 프로그램 설치: brew install 프로그램이름 brew 자체 업데이트: brew update 프로그램 업그레이드: bre.. 2021. 2. 22.
코드스테이츠 4주차 회고 이게 바로 특수 상대성 이론 ..? 빛의 속도는 모든 관찰자에게 완벽하게 동일하다. 하지만 시간과 공간은 관찰자에 따라 상대적으로 정의된다. 집 안에 앉아 하루 일과의 대부분의 시간을 보내고 있는 나는.. 아주 빠른 속도로 움직이는 우주선을 타고 있지도 않았고 아주 빠른 속도로 움직이는 우주선을 바라보고 있지도 않았다. 나는 상대성 이론을 이해하고 있지도 않았고 체감할 일도 드물었지만 방 안에 앉아 컴퓨터 화면 속에 코드들과 다투는 사이 4주라는 시간이 흘러있었다. 상대성 이론이란 말을 할때면 떠오르는 말이 하나 있는데 가장 먼곳을 가장 빠르게 갈 수 있는 방법은 무엇일까? 하는 질문에 대한 대답이다. 그 대답은 우주선도 아니고 그 이상의 것도 아닌 가장 사랑하는 사람과 함께하는 것이였다. 시간은 상대적.. 2021. 2. 18.
코드스테이츠 2주차 회고 왜 개발자가 되려했냐면.. 개발자에 이끌리다 취준이 어려워지고 내가 가는길에 대해 의문이 생길쯤에 좋아하던 잡지에서 우연히 본 어떤 문구에 개발자라는 직업에 강하게 마음이 끌렸다. '화이트 칼라', '블루 칼라'도 아닌 '뉴 칼라'의 시대가 온다! 라는 문구였다. 그냥 지나칠수도 있는 문구였지만 그럴수 없었다. 실제로 나도 느끼고 있었기 때문이다. IT에 관해 잘 모르는 사람도 IT가 미래에 주력 산업이 될 것이라는걸 모르는 사람은 거의 없을거라고 생각한다. 그 생각은 이미 주력 대학들의 과 서열에서도 보여지고 있다. 많은 기관에서 IT 전문 인력을 양성하기 위해 투자하며 정부에서도 많은 투자를 하고있다. 이미 전 세계적으로 소프트웨어 개발자는 최고의 직업이며 앞으로도 더욱더 중요한 역할을 담당할 것으로.. 2021. 2. 1.
[CSS] Selector 1. Id와 Class class id .으로 선택 #으로 선택 목적에 맞게 자유롭게 이름 붙일 수 있음 목적에 맞게 자유롭게 이름 붙일 수 있음 동일한 값을 갖는 엘리먼트 많음 문서 내에서 단 하나의 엘리먼트가 유일한 값을 가짐 엘리먼트가 여러 값을 가질 수 있음 엘리먼트 단 하나의 값을 가짐 스타일의 분류(classification)에 사용 특정 엘리먼트를 이름 붙이는 데 사용 2. 전체 선택자 : * 모든 형태의 모든 요소를 선택합니다 ns|* : 네임스페이스 ns 안의 모든 요소 선택 *|* : 모든 요소 선택 |* : 네임스페이스 없는 모든 요소 선택 3. 연결 선택자 하위 선택자 : section p { color: blue; } section - 상위요소, p - 하위요소 부모 요소에 포함된.. 2021. 1. 31.
[JS] 기초 배열 객체 Primitive, Reference, Rest Parameter, spread operator Scope Closure 1. 배열 순서가 있는 값 인덱스(index) [0] [1] [2] [3] [4] 요소(element) 73 98 86 61 96 let myNumber = [73, 98, 86, 61, 96] 대괄호(square bracket)를 이용해서 배열을 만듭니다 각각의 요소(element)는 쉼표(comma)로 구분해줍니다 Q ) myNumber의 1번째 인덱스 값의 0번째 인덱스 값은? 더보기 let myNumber =[[13,30], [78,8], [44,17]]; myNumber [1] [0]; //78 배열의 반복 let myNum = [10,20,40,10] let su.. 2021. 1. 25.
[JS] Method 문자열 함수 Array 객체 함수 str.indexOf(searchValue) method arguments 문자열 함수, immutable 1. string ( ) 전달된 인자를 모두 문자열로 변환 String(1) // '1' String(true) // 'true' String([1,2,3,4]) // '1,2,3,4' 반환된 값도 변경이 가능 let And = true && true String(And) // 'true' let fn = function(){ return 1 } String(fn) // '1' 2. length ( ) 문자열의 길이 즉, 문자 갯수를 반환 `모두들 힘내세요`.length // 8 `Code States 최고`.length // 14 3. indexOf ( ) 인자로.. 2021. 1. 19.