목록전체 글 (59)
얼레벌레
자바스크립트는 객체 지향 프로그래밍언어로 원시타입을 제외한 모든 값이 객체 더보기 ✅ 원시타입 - 하나의 값만 나타냄 - 변경 불가능한 값(immutable value) ✅ 객체 - 다양한 타입의 값으로 구성된 자료구조 - 변경 가능한 값(mutable value) 객체는 0개 이상의 프로퍼티로 구성되는 프로퍼티의 집합이며, 프로퍼티는 키와 값으로 구성됨 단, 프로퍼티값이 함수인 경우 메서드(method)로 칭함 - 프로퍼티: 객체의 상태를 나타내는 값 - 메서드: 프로퍼티를 참조하고 조작할 수 있는 동작 자바스크립트에서 객체 생성하는 다양한 방법 ▪️ 객체 리터럴 ⇨ 객체 리터럴로 객체를 생성함으로써 프로퍼티를 동적으로 추가할 수도, 객체생성과 동시에 프로퍼티를 만들 수도 있는 자스의 유연함! ▪️ O..
자바스크립트의 모든 값은 데이터 타입이 존재함 → 개발자의 의도에 따른 타입 변환 가능 (명시적타입변환=타입캐스팅) → 개발자의 의도와 관계없이 자바스크립트 엔진에 의해 자동변환 (암묵적타입변환=타입강제변환) ▫️ 암묵적타입변환(implicit coercion) - 문자열, 숫자, 불리언과 같은 원시 타입 중 하나로 타입 자동변환 - 코드 문맥상 부합하도록 자바스크립트 엔진이 암묵적 자동변환 ◾️ 문자열 - 피연산자 중 문자열 타입이 아닌 피연산자를 문자열 타입으로 변환 - Symbol타입은 문자열로 자동변환 불가 (TypeError) // 숫자타입 1+'' // '1' 0+'' // '0' Infinity+'' // 'Infinity' NaN+'' // 'NaN' // Boolean false+'' /..
백준 #1302 베스트셀러 문제 김형택은 탑문고의 직원이다. 김형택은 계산대에서 계산을 하는 직원이다. 김형택은 그날 근무가 끝난 후에, 오늘 판매한 책의 제목을 보면서 가장 많이 팔린 책의 제목을 칠판에 써놓는 일도 같이 하고 있다. 오늘 하루 동안 팔린 책의 제목이 입력으로 들어왔을 때, 가장 많이 팔린 책의 제목을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고, 알파벳 소문자로만 이루어져 있다. 출력 첫째 줄에 가장 많이 팔린 책의 제목을 출력한다. 만약 가장 많이 팔린 책이 여러 개일 경우에는 사전 순으로 ..
제어문(control flow statement) - 조건에 따라 코드 블록을 실행(조건문)할 경우 혹은 반복 실행(반복문)할 경우 사용 - 가독성을 해칠 수 있음 ⇨ forEach, map, filter, reduce등과 함께 사용 블록문 : 0개 이상의 문을 중괄호로 묶은 것 = 코드 블록 ✔️ 하나의 실행 단위로서 단독으로 사용하기 보단 제어문이나 함수 정의시 보통 사용 조건문 ✔️ 주어진 조건식의 평가 결과(Boolean)에 따라 코드 블록 실행 결정 ▪️ if-else문 - 대부분의 if-else문은 삼항 조건 연산자로 바꿔 쓸 수 있음 if (condition) { // block of code to be executed if the condition is true } else { // blo..
연산자 ✔️ 값으로 평가된 피연산자를 연산해 새로운 값을 만든다 ▪️ 산술 연산자 (arithmetic operator) - 피연산자를 대상으로 수학적 계산을 수행해 새로운 숫자값을 반환 - 산술연산 불가시 NaN (Not a Number) 반환 ▫️ 이항 산술 연산자 ⇨ +, -, *, /, % - 2개의 피연산자를 산술 연산해 숫자 값을 만듦 -> 부수효과 없음 ▫️ 단항 산술 연산자 ⇨ ++, --, +, - - 1개의 피연산자를 산술 연산해 숫자 값을 만듦 -> 부수효과 있기도 하고(++, --) 없기도 함(+, -) ❗️ 증가/감소(++/--) 연산자는 피연산자의 값을 변경하는 암묵적 할당이 이뤄진다. - ++/--가 피연산자의 앞에 위치할 경우 선증가/선감소 후할당 (++n, --n) - ++..
자바스크립트는 7개의 데이터 타입이 있음 원시 타입(primitive type) - 숫자(number), 문자열(string), 불리언(boolean), undefined, null, 심벌(symbol) 객체 타입(object/reference type) - 객체, 함수, 배열 등 ▪️ 숫자 타입 - C나 Java와 다르게, float, int, 2/8/16진수 등에 구분 없이 64비트 부동소수점(실수) 형식의 하나의 숫자 타입만 존재한다. - 세가지 특별한 값을 표현할 수 있다 ⇨ Infinity, -Infinity, NaN(not-a-number) // 숫자 타입은 모두 실수로 처리! console.log(1 === 1.0) // True // 세가지 특별한 값 console.log(1/0) // I..