전체 글
[JavaScript_study] 클래스(class)
* 자바스크립트 내부구현사항은 프로토타입을 이용해서 생성자 함수를 지원한다. * 객체지향은 대부분 class를 이용해서 객체들을 만들어간다. * 결론적으로 클래스(Class란?) > 객체를 생성할 수 있는 템플릿 (청사진, 틀) > Class를 이용해 객체지향프로그래밍을 할 수 있다.(Object-Oriented-Programming > 프로토타입보다 간편함 > 클래스를 이용해 만들어진 객체를 인스턴스(Instance)라고 한다. // 객체를 손쉽게 만들수 있는 템플릿 // 1. 생성자 함수 (오래된 고전적인 방법) // 2. 클래스 ✨ // 클래스 class class Fruit { // 생성자: new 키워드로 객체를 생성할때 호출되는 함수 constructor(name, emoji) { this.n..
[JavaScript_study] 객체란?
* 객체 (Object)란? > 서로 연관있는 속성과 행동을 묶어 준다. > 속성 : 데이터(프로퍼티//Property) > 행동 : 함수(메서드//method) > 객체란 순수 데이터 객체도 있고 상태와 행동 객체도 있다. > 밀접하게 관련 있는 상태와 행동을 객체로 묶어야 한다. // Object literal { key: value } // new Object() // Object.create(); // key - 문자, 숫자, 문자열, 심볼 // value - 원시값, 객체 (함수) // 특수한 경우가 아니라면 깔끔하게 문자로 만드는것이 제일 좋다. let apple = { name: 'apple', 'hello-bye': '✋', 0: 1, ['hello-bye1']: '✋', }; // 속성,..
[JavaScript_study] 함수(function)에 대해서
* 함수(Function) > 특정한 일을 수행하는 코드의 집합 > 프로그램에서 중복되는 일이 있다면 함수단위로 작은단위의 일들을 묶어야한다. > 수행하는 일을 잘 나타낼 수 있는 이름을 지어야한다. > 매개변수 이름도 의미있게 지어야 한다. > 함수도 결국은 객체(Object)이기 때문에 함수를 정의하면 함수의 Object가 Heap라는 공간에 정의된다. > 정보가 가득 담겨야 하므로 메모리 셀이 여러개가 필요하다. > 따라서 함수의 이름은 결국 함수 Object가 담긴 메모리 주소를 가르킨다. > 함수의 이름은 함수를 참조하고 있다. (Copy by reference) // 사용예제 1 function sum(a, b) { console.log('function'); return a + b; } co..
[JavaScript_study] 반복문(for, while)
* 반복문 Loop Statement (for) // for(변수선언문; 조건식; 증감식) { } // 실행순서: // 1. 변수선언문 // 2. 조건식의 값이 참이면 { } 코드블럭을 수행 // 3. 증감식을 수행 // 4. 조건식이 거짓이 될때까지 2번과 3번을 반복함 for (let i = 0; i < 5; i++) { console.log(i); } for (let i = 0; i < 5; i = i + 2) { console.log(i); } for (let i = 0; i < 5; i++) { for (let j = 0; j < 5; j++) { console.log(i, j); } } // 무한루프 ;; // for (;;) { // } // 반복문 제어: continue, break; fo..
[JavaScript_study] 조건문 (if, switch)
* 조건문 Conditional Statement (if) // if(조건) { } // if(조건) { } else {} // if(조건1) { } else if(조건2) {} else {} let fruit = 'orange'; if (fruit === 'apple') { console.log('🍎'); } else if (fruit === 'orange') { console.log('🍊'); } else { console.log('😍'); } if (2 < 1) { console.log('출력되면 안됨!'); } * 조건문 Conditional Statement (switch) 정해진 범위안의 값에 대해 특정한 일을 해야 하는 경우 switch를 사용가능하다. // switch let day = 1..
[JavaScript_study] 연산자에 대해서
* 산술 연산자 (Arithmetic operators) > + 더하기 > - 빼기 > * 곱하기 > / 나누기 > % 나머지 값 > ** 지수 (거듭제곱) console.log(5 + 2); console.log(5 - 2); console.log(5 * 2); console.log(5 / 2); console.log(5 % 2); console.log(5 ** 2); // es7 console.log(Math.pow(5, 2)); // + 연산자 주의점! let text = '두개의' + '문자를'; console.log(text); text = '1' + 1; // 숫자와 문자열을 더하면 문자열로 변환됨 console.log(text); * 단항 연산자 (Unary operators) > + (양)..