목록프로그래밍/JavaScript (5)
코딩.zip

같아서 시작했는데 더 모르겠어요... 어떡하지 어떻카지 오토카지 우뚜카지 (주절주절) 클래스(class) 객체지향 프로그래밍에서 특정 객체를 생성하기 위해 변수와 메서드를 정의한 틀 - 클래스는 보통 대문자로 시작 - 클래스에 정의된 속성과 메서드는 인스턴스에서 사용 - 객체를 만드는 생성자 함수를 포함 생성자(constructor) : 인스턴스를 생성하는데 사용하는 함수로 return값을 만들지 않는다. 클래스 내에 하나의 생성자만 존재할 수 있다. 인스턴스(instance) : new 클래스 이름() 으로 선언하며 클래스를 기반으로 만든 객체이다. 즉, 클래스의 실제 객체이며 여러 개를 생성할 수 있다. new 키워드 : 인스턴스를 만들 때 사용하며 즉시 생성자 함수가 실행되고 변수에 인스턴스가 할당..

🔐 private 변수 외부에서 해당 데이터에 직접 접근하여 값을 참조하거나 변경할 수 없음 - 접근 제어자 - 클래스 내부에서만 접근 가능 - 데이터 안전하게 보호 가능 길이는 마이너스(-)가 될 수 없지만 임의로 값에 '-10' 넣는다면 실행결과처럼 둘레는 음의 결과로 출력된다. 이처럼 외부에서 임의로 값을 수정하는 것을 방지하기 위해서 어떻게 해야할까? 바로, 클래스 내부에 private 변수를 생성하면 된다. 해쉬(#) prefix : private class 필드 선언, #이 없다면 해당 클래스 내부에서도 접근 x 만약 private 필드에 값을 변경하고 싶다면 클래스 내부에서 메서드나 생성자를 통해 변경하는 방법을 사용해야 한다. 🏷️ Getter / Setter 메서드 getter : pro..

▶ 얕은 복사(shallow Copy) 주소값(참조값)을 복사해서 복사본과 원본 모두 영향을 미침 🚨 잠깐, const로 선언된 변수는 상수값을 가지는데 어떻게 요소를 추가 했을 때 Error가 뜨지 않았을까? const로 선언된 변수는 재할당이 불가능한 상수이다. 그러나 const로 선언된 객체(배열 포함)는 객체의 내부 요소가 변경될 수 있다. 얕은 복사(shallow copy)는 객체의 주소값을 복사해서 새로운 변수에 할당하기 때문에 object_202404가 object_202403와 같은 객체를 참조하고 있다. ▶ 깊은 복사(deep Copy) 실제값을 새로운 메모리에 복사해서 완전히 새로운 객체 생성 깊은 복사(deep copy)를 사용하면 주소값이 아닌 객체의 실제 내용을 복사하게 되고, 이..

🫧 콜백 함수(callback function) 💡 함수를 매개변수로 전달하는 함수 익명 함수 사용할 때 장점, 같은 이름의 식별자 사용으로인한 함수 충돌 방지 및 코드 간결성 1. 콜백 함수 활용 함수 : forEach() 배열이 갖고 있는 함수로써, 배열 각각의 요소에 콜백함수 실행 2. 콜백 함수 활용 함수 : map() 리턴값을 기반으로 새로운 배열을 만드는 함수 3. 콜백 함수 활용 함수 : filter() 리턴값이 true인 것들만 모아서 새로운 배열을 생성하는 함수 💿 화살표 함수(Arrow Function) 💡 익명 함수를 간단하게 사용하기 위한 목적으로 만들어진 함수 생성 문법 ※ 중요한 것은 numbers의 원래 값은 변하지 않는 다는 것 - 화살표 함수 표현식은 자신만의 this가 없..

- if , switch 문법 if(else if)문 비교연산자, 논리연산자를 사용하여 조건식의 결과값이 true 또는 false이어야 함 switch문 switch문의 결과값은 정수 또는 문자형이어야 함 *break가 없으면 break를 만날 때까지 실행하므로 이점을 유의하여 작성해야 함. - if 문 vs switch 문 (언제 사용하는 것이 좋을까?) if문 사용 1. 다양한 조건 & 표현식 사용 : 다양한 조건을 사용하거나 복잡한 논리 표현식을 효과적으로 다룰 때 2. 유연성 : 여러 조건 중 하나만 검사하거나 특정 상황에 따라 동작을 변경해야 할 때 switch문 사용 1. 가독성 : 여러 값 중 하나를 선택해서 동작을 실행할 때 가독성이 더 좋음 2. 효율성 : 일치하는 case를 찾으면 해당..