스프레드와 디스트럭쳐링은 무엇일까? 스프레드 (Spread) --스프레드는기존의 객체를 가지고 복사, 확장, 병합, 덮어쓰기를 하여 새로운 객체를 만들 수 있다. 스프레드 연산자는 (...)다. 예시 코드// 객체 복사const person = { name: "Alice", age: 25 };const copyPerson = { ...person };console.log(copyPerson); // { name: "Alice", age: 25 }console.log(copyPerson === person); // false (완전히 새로운 객체)// 객체 확장 (새로운 속성 추가)const person = { name: "Alice", age: 25 };const newPerson = { ....
Language

클래스는 어떻게 사용할까? 클래스 --클래스를프로토타입의 Syntacitc Sugar라고 부르기도 한다.(Syntacitc Sugar = 복잡한 문법을 보다 사용하기 편하게 만든 것) 예전에는생성자 함수와 프로토타입을 사용하여 지금의 클래스와 비슷한 기능을 수행했지만해당 방법은 다른 언어들의 객체지향 방식과는 다르기 때문에 클래스 방식이 생겼다.(단, 생성자 함수와 클래스의 동작이 완전 동일하지는 않다.) 클래스 작성 형식class 클래스명 { 필드명: 값; ... constructor (매개변수1, ...) { // 생성자 this.필드명 = 값; ... } 메서드() { ... }} 예시코드class car { c..
객체는 무엇이며 어떻게 관리할까? 객체 --객체라는 용어는 매우 포괄적이지만자료형의 관점에서는 키(key)와 값(value)으로 구성된 속성(프로퍼티)의 집합이다. 객체는 기본 자료형과는 다르게여러 개의 값을 가질 수 있고 서로 다른 자료형의 값도 가질 수 있다. 기본 형식const 객체명 = { // 속성(프로퍼티) 키1: 값1, 키2: 값2}; 예시 코드// 빈 객체const person = {};const person = { name: "gildong" };const person = { name:["Hong", "AN"], // 배열 age:20, // 숫자 isAdult:true ..
함수는 어떻게 사용할 수 있을까? 함수 선언 --함수는어떤 목적을 가지고 작성한 코드를 모아 둔 블록문으로호이스팅이 되기 때문에 함수를 밑에 선언하더라도 위에서 해당 함수에 접근할 수 있다. 기본 형식 (네이밍 함수)// 함수 선언하기function 함수명 (입력값) { // 수행할 일 return 반환값 // 반환할 값이 존재한다면 사용 (선택사항)}// 함수 호출하기함수명(입력값);return문은메서드에서 수행한 값을 외부로 반환할 때 사용된다. 예시 코드function add(x, y) { return x + y;}let z = add(2, 3); // z = 2 + 3;console.log(z); // 5function gugudan() { for(let i = 1; i 위 ..
반복문은 어떻게 작성할까? while 문 --기본 형식while(조건식) { // 조건식이 참이면 실행한다. // 수행이 끝나면 다시 조건식으로 돌아간다. // 즉, 조건식이 참인 동안 계속 반복 수행한다.} 예시 코드let x = 0;while (x 주의조건이 항상 참인 경우 무한 반복으로 while문에 갇힐 수 있기 때문에continue 또는 break문을 잘 사용하거나 조건문이 false가 될 수 있도록 코드를 작성해야 한다.- continue : continue문을 만나는 순간 바로 해당 반복문 맨 위로 이동하여 다음 반복문을 이어서 진행한다.- break : 반복문을 탈출한다.-- do while 문 --while문과 동일하지만 조건문이 참이든 거짓이든..
조건문은 어떻게 작성할까? if / else 문 --기본 형식if(조건식) { // 조건식이 참이면 실행}if(조건식) { // 조건식이 참이면 실행} else { // 조건식이 거짓이면 실행}if(조건식1) { // 조건식1이 참이면 실행} else if(조건식2) { // 조건식1이 거짓이고 조건식2가 참이면 실행} else { // 모든 조건식이 거짓이면 실행}if(조건식1) { // 조건식1이 참이면 실행} else if(조건식2) { // 조건식1이 거짓이고 조건식2가 참이면 실행} else if(조건식3) { // 조건식1, 2가 거짓이고 조건식3이 참이면 실행} else { // 모든 조건식이 거짓이면 실행}만약 블록{}에 코드가..

어떤 연산자들이 있을까? 산술 연산자 --숫자 연산을 수행하는 연산자+ 연산자를 사용할 때 피연산자를 문자열로 사용할 수 있으며두 문자열을 이어서 붙이는 결과를 나타낸다.-- 대입 연산자 --데이터를 대입(할당)하는 연산자-- 비교 연산자 --피연산자를 비교한 후 논리형 값인 참(true) 또는 거짓(false) 값을 반환하는 연산자피연산자에 문자열을 사용하면, >= 연산자에서 각 문자열의 사전적 순서를 기준으로 비교 연산한다.문자열과 숫자를 비교하면 문자열을 숫자로 변경 후 숫자로 비교한다. (숫자 형태의 문자열인 경우)-- 논리 연산자 --피연산자를 각각 논리적으로 평가한 뒤, 서로 조건에 맞는 피연산자를 반환즉, 각 피연산자는 boolean 타입이다.빈 문자열(""), un..

자료형은 어떻게 사용할까? 자료형 --자료형은데이터의 종류를 의미하고 크게 2가지로 구분된다. 기본 자료형 : string(문자열), number(숫자), 논리(boolean), undefined, null, Symbol참조 자료형 : object(객체)-- 문자열 (string) --문자열을 가지는 자료형으로 작은따옴표(') 또는 큰 따옴표(")로 묶은 문자열을 값으로 가진다. 예시 코드let string1 = "Hello, World!";let string2 = 'Hello, World!';console.log(string1);console.log(string2);-----출력 결과-----------------------------------Hello, World!Hello, ..