부트캠프

프로젝트/미니 프로젝트 & 과제

[과제] Koans

Koans: 불교에서 유래된 단어로, 결론을 내리기 전에 이게 왜 맞는지 깊게 고민한다는 의미 오늘은 koans 과제를 통해 지금까지 배운 것들을 정리하고 되새기는 시간을 가졌다. 풀면서 헷갈리거나 다시 한번 짚고 넘어갈 필요가 있는 것들을 정리해 본다. 1. 암묵적 타입 변환 expect(123 - "1").to.equal(122); 산술 연산자는 피연산자 중 숫자 타입이 아닌 것을 숫자 타입으로 암묵적 타입 변환한다. expect("1" + true).to.equal(Fill_Me_In); //"1true" 그러나 + 연산자는 산술 연산자로도 쓰이지만 피연산자 중 하나 이상이 문자열인 경우 문자열 연결 연산자로도 쓰인다. 위 경우 "1"이 문자열이므로 불리언 true가 문자열로 암묵적 타입 변환돼 "..

Javascript

[Javascript] 스코프와 클로저

1. 스코프 1-1. let, var, const와 스코프 2. 클로저 2-1. 클로저의 활용 1. 스코프 스코프란 변수 접근 규칙에 따른 유효 범위를 말한다. 함수 또는 블록에 의해서 나뉘어진 범위에 울타리를 치는 것과 같다. 스코프에서 핵심이 되는 규칙은 안쪽 스코프는 바깥쪽 스코프에서 선언된 변수에 접근할 수 있지만 바깥쪽 스코프는 안쪽 스코프에서 선언된 변수에 접근할 수 없다는 것이다. 가장 바깥의 스코프는 전역 스코프(global scope)라고 불린다. 이와 구별되는 개념은 지역 스코프(local scope)로, 전역 스코프가 아닌 스코프는 모두 지역 스코프다. 지역 스코프에서 선언된 지역 변수는 전역 스코프에서 선언된 전역 변수보다 높은 우선순위를 가진다. 즉, 같은 이름으로 선언된 변수라면..

Javascript

[Javascript] 객체

1. 객체란 2. 객체 리터럴 3. 프로퍼티 4. 프로퍼티 추가과 삭제 1. 객체란? 자바스크립트는 객체 기반의 프로그래밍 언어이다. 원시 값을 제외한 나머지 값(함수, 배열, 정규 표현식 등)은 모두 객체다. 2. 객체 리터럴 객체를 생성하는 가장 일반적인 방법은 객체 리터럴을 사용하는 것이다. 객체 리터럴은 {} 안에 0개의 프로퍼티를 정의하고 변수에 할당한다. var person = { lastName: 'Lee', firstName: 'Jeanne', sayHello: function(){ console.log(`Hello! My name is ${firstName} ${lastName}.` } } 3. 프로퍼티 객체는 프로퍼티의 집합이고, 프로퍼티는 키와 값으로 이뤄져 있다. 프로퍼티에 접근하기..

Javascript

[Javascript] 배열

1. 자바스크립트에서의 배열 2. 배열 기본 메서드 2-1. isArray 2-2. indexOf 2-3. includes 2-4. push, pop, unshift, shift 2-5. slice 2-6. Splice 2-7. split, join 2-8. concat 1. 자바스크립트에서의 배열 자바스크립트에서 배열의 타입은 객체다. 그러나 다른 객체와 달리 배열은 값의 순서가 있고 length 프로퍼티가 있다는 점에서 독특한 객체다. 값의 순서가 있기 때문에 인덱스로 참조할 수 있고 순차적으로 값에 접근하기 적합하다. 2. 배열 기본 메서드 배열에는 원본 배열을 직접 변경하는 메서드와 원본 배열을 직접 변경하지 않고 새로운 배열을 생성해 반환하는 메서드가 있다. 전자는 mutator method, ..

코드스테이츠 프론트엔드 부트캠프

[CLI] CLI(Command-Line-Interface) 다루기

1. 왜 여전히 CLI를 쓸까? 지금은 GUI가 잘 발달해 있어서 CLI를 쓸 줄 몰라도 컴퓨터를 사용하는 데 아무런 문제가 없다. 그렇지만 대규모의 서버를 운영해야 할 경우 CLI를 이용하면 각각의 컴퓨터에 모두 I/O소스(모니터, 키보드, 마우스 등)를 장착하지 않고도 많은 컴퓨터를 조작할 수 있다. 2. CLI 명령어 pwd: 현재 위치 확인하기 mkdir: 새로운 폴더 생성하기 ls: 특정 폴더에 포함된 파일이나 폴더 확인하기 ls -l: 폴더나 파일의 포맷을 전부 표현 ls -a: 숨어있는 폴더나 파일을 포함한 모든 항목을 출력. d로 시작하면 폴더, -으로 시작하면 파일이다. ls -al 또는 ls -la로 조합해서 사용할 수 있다. cd: 폴더에 진입하기 touch: 파일 생성하기 cat: ..

프로젝트/미니 프로젝트 & 과제

[과제] 계산기 기능 구현하기

지난 시간에 이어 오늘은 자바스크립트로 계산기 기능을 구현하는 실습을 진행했다. 엣지 케이스(Edge case)와의 전쟁 계산기를 사용할 때 사용자들이 1 + 1 = 2 처럼 정직한 계산만 시행하면 좋겠지만 실생활에서는 수많은 방식의 예외적인 사용법들이 실행된다. 예컨대 한번만 입력해야 하는 소수점을 여러 번 누를 수도 있고 더했다 뺐다 나눴다 하는 연속적인 연산을 여러 번 해야 할 수도 있으며 10+0.1을 하고 싶을 때 +를 누른 다음 바로 소수점을 눌러서 0.1을 만들고 싶을 수도 있다. 이처럼 일반적인 시나리오와는 다른 예외적인 상황을 엣지 케이스라고 부른다. 계산기는 정확한 결과값을 내는 것이 기능의 전부라고 할 수 있는 만큼 엣지 케이스를 철저하게 처리하는 것이 중요하다. 특히나 어려웠던 엣지..

프로젝트/미니 프로젝트 & 과제

[과제] 반복문으로 별찍기

페어님이 반복문 연습을 위해 추천해 주신 별 찍기! 1. 왼쪽 직각삼각형 * ** *** **** ***** let star = ''; for(let i=1; i

Javascript

[Javascript] 조건문, 반복문, 함수

1. 조건문 1-1. if ... else문 1-2. switch문 2. 반복문 2-1. for문 2-2. while문 3. 함수 3-1. 함수 정의 3-2. 함수 호출 1. 조건문 조건문은 주어진 조건식이 참인지 거짓인지에 따라 실행할 코드 블록을 지정하는 것이다. 자바스크립트의 조건문으로는 if ... else문과 switch문이 있다. 1-1. if ... else문 if(조건식) { // 조건식이 참일 때 실행할 코드 블록 } else { // 조건식이 거짓일 때 실행할 코드 블록 } if ... else문에 조건을 추가하기 위해서는 else if를 사용한다. if(조건식) { // 조건식1이 참일 때 실행할 코드 블록 } else if{ //조건식2가 참일 때 실행할 코드 블록 } else { ..

JeanneLee57
'부트캠프' 태그의 글 목록 (3 Page)