💪JavaScript/script.js

원시값 우리는 지난 시간에서 원시값은 변하지 않는 불변의 값이라고 배웠습니다. 자바스크립트에서 변수에 원시값을 할당을 하게 된다면 원시값에 해당하는 메모리를 확보하고 그곳에 원시값을 저장한 뒤 변수에는 메리의 주소를 연결시키겠죠. ... 1000 주소 ... x = 1000 (주소) ... x라는 변수에 1000 값을 할당하려면 1000에 해당하는 메모리를 확보한 뒤 이 메모리의 주소를 변수에 연결하는 것입니다. 하지만 자바스크립트에서는 값을 재할당 할 수가 있는데 이는 어떻게 가능할까요? ... 1000 주소 60 주소 ... x= 60 (주소) ... 이렇게 새로운 메모리를 확보하고 다시 주소를 변수에 연결하는 것입니다. 이렇게 우리는 이해하고 넘어가면 되겠습니다. 그럼 또 다른 상황을 예제로 살펴보..
객체란? 원시타입의 값, 즉 원시 타입값은 변경 불가능한 값입니다. 하지만 객체타입의 값은 변경 가능한 값입니다. var foo = { //프로퍼티 입니다. name : 'jin', gender : 'male' //메소드 입니다. sum : function () { this.name + this.gender; } } 객체리터럴에 의한 생성 객체 리터럴은 중괄호 내에 0개 이상의 프로퍼티를 정의합니다. 변수에 할당되는 시점에 자바스크립트 엔진은 객체 리터럴을 해석해 객체를 생성합니다. const bar = {} 프로퍼티 객체는 프로퍼티의 집합이고, 프로퍼티는 키와 값으로 구성됩니다. 이전에 사용했던 예제를 다시 사용해보겠습니다. var foo = { //프로퍼티 입니다. name : 'jin', gende..
타입변환 암묵적 타입변환 암묵적 타입변환에 대해 배워보겠습니다. 다른 말로는 타입 강제 변환이라고도 합니다. 우리의 의도와는 달리 코드의 문맥을 고려해 암묵적으로 데이터 타입을 강제 변환 시키는 것을 말합니다. 1+'2' //'12' `1 + 2 = ${1+2}` // '1 + 2 = 3' 위의 코드 처럼 숫자리터럴을 강제로 문자리터럴로 바꿀 수도 있습니다. 2-'1' // 1 11 > '9' // true 이전의 코드와는 다르게 문자를 숫자로 바꿀 수도 있습니다. if ('') console.log(1); // if (0) console.log(2); // if ('yes') console.log(3); // 3 if (null) console.log(4); // 이렇게 조건문 속의 값을 평가하고 bo..
제어문은 조건에 따라 코드 블록을 실행 하거나 반복 실행할 때 사용하게 됩니다. 보통의 코드는 탑다운 방식으로 위에서 아래로 읽어나가게 되죠? 하지만 제어문을 사용하게 되면, 작성자의 의도대로 코드를 읽도록 만들 수 있습니다. 블록문 블록문은 0개 이상의 문을 중괄호로 묶은 것을 말합니다. 앞으로 코드 블록, 블록 이라고 칭하는 것들은 모두 같은 것입니다. 단독으로도 사용은 할 수 있지만, 일반적으로 다른 제어문이나 함수를 정의할 때 사용합니다. { const foo = 10; } 참고로 중괄호는 이미 자체적으로 종결성을 가지고 있기 때문에 세미콜론은 붙이지 않아도 된다고 했죠? 조건문 if...else 문 if (조건식) { // 조건식이 참일 때 수행할 코드블록 } else { // 조건식이 거짓일 ..
산술 연산자 산술 연산자는 우리에게 굉장히 익숙한 연산자들입니다. 이항 산술 연산자 의미 + 덧셈 - 뺄셈 * 곱셈 / 나눗셈 % 나머지 이항 산술 연산자는 우리가 평소에도 사용하는 평범한 연산자들이죠? 특별한게 있다면 %로 표현된 나머지 연산자 입니다. console.log( 5 % 2 ) // 1 이제 단항 산술 연산자에 대해서 알아보겠습니다. 단항 산술 연산자 의미 ++ 증가 -- 감소 + 별 다른 의미 없음 - 양수를 음수로, 음수를 양수로 반전합니다. const x = 1 x++ // x = x + 1 와 같은 의미 입니다. x-- // x = x - 1 와 같은 의미 입니다. 이와 같이 간단히 표현할 수 있다는 특성을 이용해 조건문 혹은, 반복문에서 자주 사용하게 될 것입니다. 할당 연산자 할..
데이터 타입의 종류 구분 데이터 타입 설명 원시타입 숫자 타입 숫자, 정수와 실수 구분 없이 하나의 숫자 타입만 존재 문자열 타입 문자열 불리언 타입 논리적 참, 거짓 undefinded 타입 자바스크립트에서 암묵적으로 할당하는 초기 값 null 타입 값이 없음을 의도하고 명시할 때 사용하는 값 심벌 타입 ES6에서 추가된 7번째 타입 + Bigint 타입 ES11에서 추가된 8번째 타입 객체타입 객체, 함수, 배열... 데이터 타입의 종류는 위의 표 에서 보이는 것처럼 분류를 해 놓았습니다. 그럼 우리는 왜 이렇게 데이터 타입을 나눠놓아야 할까요? 우리가 수학문제를 풀 때 를 생각해보시기 바랍니다. 우리가 연산을 위해 사용한 수 1은 숫자로 인식될 것입니다. 그리고 때때로 사용하는 하나, 첫번째 와 같..
박필중
'💪JavaScript/script.js' 카테고리의 글 목록 (2 Page)