본문 바로가기

JavaScript Study24

JavaScript - #12. 원시값과 객체 (1) 자바스크립트에는 총 7개의 데이터 타입이 있으며 이는 크게 원시 타입과 객체 타입으로 나누어진다. 원시 타입 객체 타입 데이터 타입 숫자, 문자열, 불리언, null, undefined, 심벌 객체 특징 - 변경 불가능한 값 - 변수에 실제 값 저장 - 변수에 원시값을 갖는 변수 할당 시 원시값이 복사되어 할당 / 값에 의한 전달 - 변경 가능한 값 - 변수에 참조 값 저장 - 변수에 참조값을 갖는 변수 할당 시 참조값이 복사되어 할당 / 참조에 의한 전달 원시 타입과 객체 타입을 구분하는 특징은 위 표에 명시된 내용이며, 각각의 내용을 자세히 알아보자. 1. 원시 타입 - 변경 불가능한 값 원시타입의 값은 변경 불가능한 값이다. 최초 생성된 원시값은 읽기 전용으로 변경이 불가능하다. 변수는 값을 저장하.. 2023. 8. 28.
JavaScript - #11. 객체 리터럴 자바스크립트는 객체(Object)기반 프로그래밍언어이며, 자바스크립트에서 원시값을 제외한 나머지 모든것이 객체이다. 간단히 원시값과 객체의 차이를 알아보자 원시 값 - 단 하나의 값만 나타냄, 변경이 불가능한 값임. 객체 타입의 값 - 다양한 타입의 값(원시값 또는 다른 객체)을 하나의 단위로 구성한 복잡한 자료구조, 변경이 가능한 값. 자세한 비교는 추후에 따로 알아보도록 하자. 그렇다면 객체란 무엇인가. 객체란 0개이상의 프로퍼티로 구성된 집합이며, 프로퍼티는 키(key)와 값(value)로 구성된다. 프로퍼티 값은 자바스크립트에서 사용할 수 있는 모든 값이 될 수 있다. 그중에서도 자바스크립트의 함수도 값이 될 수 있으며, 이는 함수가 일급객체이기 때문이다. 아직 함수와 일급객체에대해 배우지는 않았.. 2023. 8. 27.
JavaScript - #10. 타입변환 & 단축평가 이전에 자바스크립트의 타입을 알아본적이 있다. 자바스크립트는 개발자에 의도에 따라 다른 타입으로 변환이되는 명시적 타입 변환과 개발자의 의도와는 상관없이 자바스크립트 엔진에 의해 암묵적으로 타입이 변환되는 암묵적 타입변환이 이루어진다. 우리가 이 두가지 경우를 알고 있어야 프로젝트 도중 이로인한 오류를 예방하고, 더욱 효과적인 코딩을 할 수가 있다. 지금부터 이 두가지 경우에 대해서 알아보겠다. 먼저 간단한 코드를 통해 이 두가지 변환 방식의 느낌을 알아보자. //명시적 타입 변환 ( explicit coercion ) let x = 10; let str = x.toString(); // toString()은 원 변수를 변화시키지 않는다. console.log (typeof x, x); console.l.. 2023. 8. 25.
JavaScript - #9. 제어문 (2) 2. 반복문 (loop statement) 반복문은 조건식 평가를 반복하여 결과가 참인 경우 코드 블록을 실행한다. 조건식이 거짓이 되면 코드블록을 실행하지 않고 빠져나오게 된다. 자바스크립트에서 반복문은 for문, while문, do while문 3가지가 있다. - for문 for문을 사용하기 위해서는 평가를 받을 변수의 선언 및 초기화, 조건식, 증감식 이 3가지 요소가 필요하다. for문의 작동 순서는 다음과 같다 1. 변수의 선언 및 초기화 (3-2를 실행할 때까지 2~4 반복) 2. 조건식 평가 3-1. 조건식이 참일경우 : 코드 블록 내 문 실행 3-2. 조건식이 거짓일 경우 : for loop 종료 4. 증감식 실행 코드를 작동순서에 맞게 분석하며 이해해보자. for (let i =0 ; i 2023. 8. 25.
JavaScript - #8. 제어문 (1) 제어문은 코드의 흐름을 조건에 따라서 인위적으로 제어하는 것의 의미한다. 일반적으로 코드는 위에서 부터 순차적으로 실행이 되지만 제어문을 사용하면 이 흐름을 내가 원하는대로 제어한다는 것이다. 제어문에 들어가기 앞서 블록문에 대하여 알아보자. 블록문 (코드블록) 0개이상의 문을 중괄호를 통해 묶은 것. // 블록문 { let foo = 10; } // 제어문 let x = 1; if(x0){ kind = '양수'; } else if (num 2: 양수 다음 코드를 분석해보자. 먼저 조건식에서 사용되는 피연산자는 num이다. num은 2라는 숫자로 초기화가 되어있다. 가장먼저 if문에 있는 조건식을 확인해보자. (num > 0) num이 2이기 때문에 해당 조건식은 true(참)이다. 따라서 해당 조건식과.. 2023. 8. 25.
JavaScript - #7. 연산자 (2) 4. 삼항연산자 (ternary operator) 삼항연산자는 조건식의 평가 결과에 따라서 반환할 값을 결정하는 것이다. 부수효과는 없으며 표현식은 다음과 같다. 삼항 연산자에는 (1 true false || true; // => true false || false; // => false true && true; // => true true && false; // => false false && true; // => false false && false; // => false !true; // => false !false; // => true 논리합 (||)의 경우 좌항 우항 중 하나라도 true 이면 true를 반환한다. 논리곱 (&&)의 경우 좌항 우항 둘 다 true가 되야지만 true를 반환한다... 2023. 8. 24.