전체 글 (107) 썸네일형 리스트형 JS 원시 데이터 타입과 객체 비교 1. 원시 데이터 타입과 객체 비교 자바스크립트에서는 원시 데이터 타입으로 문자형, 숫자형, 논리형, null, undefined, symbol 타입을 제공하고 있다. 그리고 이외의 값에 대해서는 모두 객체로 다루고 있다. 이 두 가지 타입에 대해서는 다음과 같은 측면에서 구분될 수 있다. 1️⃣ 변경 가능 여부 원시 데이터 타입은 변경이 불가능한 값(immutable value) 이고, 객체는 변경이 가능한 값(mutable value) 이다. 원시 데이터 타입으로 생성된 값은 읽기 전용 값으로, 변경이 불가능한 타입이다. 이에 대해서는 변수와 값을 구분해서 생각해야 한다. 변수는 하나의 값을 저장하기 위해 확보된 메모리 공간을 식별하기 위하여 붙여진 식별자이고, 값은 메모리 공간에 저장되는 실제 데이.. JS 객체 : Object 1. 객체란? 자바스크립트는 객체 기반의 프로그래밍 언어로, 자바스크립트를 구성하는 거의 모든 것이 객체이다. 객체는 0개 이상의 프로퍼티로 구성된 집합으로, 프로퍼티는 키와 값으로 구성된다. 위의 예시에서의 프로퍼티는 'name : 'ann', age : 15' 부분 모두를 지칭하고, 키는 name, age 를, 값은 'ann' , '15' 이다. 이 값 영역에는 자바스크립트에서 사용할 수 있는 모든 값이 올 수 있는데, 함수 또한 값으로 쓰일 수 있다. 값으로 쓰인 함수는 일반적인 함수와 구분을 위하여 '메서드'라고 부르기도 한다. 2. 객체 리터럴 객체 리터럴은 중괄호 {} 를 통해 정의한다. 만약 중괄호 내에 프로퍼티는 아무것도 정의하지 않으면, 빈 객체로 인식한다. 여기서 중요한 점은 객체 리터.. JS 데이터 타입 변환 : 암묵적, 명시적 1. 암묵적 타입 변환 자바스크립트는 개발자의 의도와 상관없이 코드에 따라 암묵적으로 데이터 타입을 변환하는 경우가 있다. 1️⃣ 문자열 타입으로의 암묵적 변환 + 연산자를 활용하면 문자열이 아닌 타입을 문자열 타입으로 타입 변환이 굉장히 쉽게 적용된다. 다른 타입에서의 + 연산자 활용은 더하기 연산을 수행하지만, 문자열이 포함된 더하기 연산은 산술적 연산이 아닌 문자열 결합이 수행되기 때문이다. 1️⃣ 숫자 타입 0 + '' 👉 '0' -0 + '' 👉 '0' NaN + '' 👉 'NaN' Infinity + '' 👉 'Infinity' -Infinity + '' 👉 '-Infinity' 2️⃣ 불린 타입 true + '' 👉 'true' false + '' 👉 'false' 3️⃣ null null .. JS 제어문 : 조건문, 반복문 1. 조건문 : if - else 문 if (조건식) { 조건식이 참이면 실행될 코드 } else { 조건식이 거짓이면 실행될 코드 } if - else 문에 사용되는 조건식은 불린 값이 반환되는 표현식이 사용되어 그 값에 따라 실행되는 코드가 달라진다. 조건식의 결과가 true 인 경우에는 if 문의 코드가, false 인 경우에는 else 문의 코드가 실행된다. 연산자 때와 마찬가지로 조건식이 true 또는 false 가 아닌 경우에는 boolean 타입으로 암묵적 형변환이 일어나 불린 값으로 강제 변환된다. 문자열의 false 1️⃣ '' 빈문자열 문자열의 true 빈문자열 이외의 모든 값 숫자의 false 1️⃣ 0 2️⃣ NaN 숫자의 true 0과 NaN 이외의 모든 값 📌 강제 변환이 일어나.. JS 연산자 : 산술, 비교, 논리, 대입 1. 산술 연산자 산술 연산자의 종류 1️⃣ + : 더하기 연산자 2️⃣ - : 빼기 연산자 3️⃣ * : 곱하기 연산자 4️⃣ ** : 제곱 연산자(ES6) 5️⃣ / : 나누기 연산자 6️⃣ % : 나머지 연산자 7️⃣ ++ : 증가 연산자(+1) 8️⃣ -- : 감소 연산자(-1) 산술 연산자의 피연산자는 숫자 타입이다. 때문에 산술 연산자의 피연산자로 숫자 타입이 아닌 데이터 타입을 사용하고자 하면, 묵시적 형변환이 일어난다. boolean 타입 👉 number 타입 1️⃣ true : 1 2️⃣ false : 0 string 타입 👉 number 타입 1️⃣ ''(빈문자열) : 0 2️⃣ '1234' : 1234 3️⃣ '가나다' : NaN 📌 문자열 타입 결합 문자열 타입은 산술 연사자 중 더.. SQL HR 예제 문제 풀이 3 48 번 문제는 조건에 맞는 사원의 성과 연봉을 조회하는 문제이다. SELECT 절에는 조회 대상 컬럼을 작성해주고, FROM 절에는 사원의 데이터가 있는 사원 테이블을 작성해주고, WHERE 절에는 조회 조건인 연봉 12000 이상을 작성하였다. 49 번 문제는 특정한 사원을 조회해야 하는 문제이다. SELECT 절에는 조회 대상이 될 컬럼 명을 작성해주고, FROM 절에는 사원의 데이터가 있는 사원 테이블을 작성해주고, WHERE 절에는 조회 조건인 사원 번호 176 인 사람을 찾도록 작성하였다. 50 번 문제는 연봉이 특정 범위에 포함되지 않는 사람을 찾는 문제이다. 특정 범위를 찾는 것은 BETWEEN AND 로 범위를 쉽게 특정할 수 있는데, 이 범위가 아닌 것을 찾을 때에는 앞에 NOT 키워드.. SQL HR 예제 문제 풀이 2 이번 문제는 도시 중에서도 부서가 없는 도시를 조회하는 문제이다. SELECT 절에서는 도시를 조회하기 위하여 CITY 컬럼을 두었고, FROM 절에서는 도시를 기준하기 위하여 LOCATIONS 를 두었다. WHERE 절에서 조건을 거는데, LOCATIONS 의 LOCATION_ID 가 DEPARTMENTS 의 LOCATION_ID 와 일치하지 않으면 되기 때문에 서브쿼리를 사용하여 DEPARTMENTS 의 LOCATION_ID 를 SELECT 해오도록 하였다. 위의 문제를 응용한 문제이다. 국가 명을 조회하는데 사원이 존재하지 않는 국가를 조회해야 하는 문제이다. 사원에 대한 정보는 EMPLOYEES 테이블에 존재하고 있는데, 이 테이블에는 국가와 관련한 정보가 없다. 대신 DEPARTMENTS 테이블.. SQL HR 예제 문제 풀이 1 사원의 정보는 EMPLOYEES 테이블에 존재하기 때문에 FROM 절에서는 해당 테이블을 작성한다. '모든'에 해당하는 키워드는 * 이다. 장소와 관련한 테이블은 LOCATIONS 이며, 그 중에서도 도시만 출력하기 때문에 CITY 컬럼명을 작성하였다. 사원에 관련하기 때문에 대상이 되는 테이블은 EMPLOYEES, 모든 정보를 요구하고 있기 때문에 출력 대상 컬럼은 * 이 된다. 그 중에서도 조건을 걸고 있기 때문에 WHERE 절을 작성하게 되는데, 이름의 첫 글자가 M 으로 시작하는 사원을 찿아야 하기 때문에 LIKE 함수를 사용하였다. 글자의 수는 상관없기 때문에 M 이라는 글자 뒤에 그 무엇이 와도 괜찮다는 표현으로 % 를 작성한다. 위의 문제와 비슷하지만 조건이 달라졌다. 이번에는 첫 글자가 아.. 이전 1 2 3 4 5 ··· 14 다음