본문 바로가기

programming study/JavaScript

(186)
30장. Date(1) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 표준 빌트인 객체 날짜와 시간을 위한 메서드 제공 UTC: 협정 세계시 국제 표준시 그리니치 평균시 KST: 한국 표준시 UTC + 9h 자바스크립트 코드가 실행된 시스템의 시계에 의해 결정 30.1 Date 생성자 함수 내부적으로 날짜와 시간을 나타내는 정수값을 가짐 1970년 1월 1일 00:00:00(UTC)을 기점으로 객체가 나타내는 날짜와 시간까지의 밀리초를 나타냄 현재 날짜와 시간 Date 생성자 함수에 명시적으로 인수를 지정하면, 다른 날짜 정보 접근 가능 30.1.1 new Date() 현재 날짜와 시간을 가지는 Date 객체를 반환 new 연산자 없이 호출 시, 문자열로 반환 ..
29장. Math 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 표준 빌트인 객체 생성자 함수 X 수학적 상수, 함수를 위한 프로퍼티 메서드 제공 29.1 Math 프로퍼티 29.1.1 Math.PI 원주율 PI 값 29.2 Math 메서드 29.2.1 Math.abs 전달된 숫자의 절대값 반환 0 또는 양수 29.2.2 Math.round 인수로 전달된 소수점 이하를 반올림한 정수 반환 29.2.3 Math.ceil 인수로 전달된 숫자의 소수점 이하를 올림한 정수를 반환 29.2.4 Math.floor 인수로 전달된 소수점 이하를 내림한 정수 반환 29.2.5 Math.sqrt 전달된 숫자의 제곱근 반환 29.2.6 Math.random 임의의 난수 반환..
28장. Number(2) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 28.3 Number 메서드 28.3.1 Number.isFinite 정적 메서드 유한수인지 검사하여 불리언으로 반환 28.3.2 Number.isInteger 정적 메서드 정수인지 검사하여 불리언으로 반환 28.3.3 Number.isNaN ES6 정적 메서드 NaN인지 검사하여 불리언으로 반환 28.3.4 Number.isSafeInteger 인수로 전달한 숫자값이 안전한 정수인지 검사하여 불리언으로 반환 28.3.5 Number.prototype.toExponential 프로토타입 메서드 전달 받은 인수를 지수 표기법 문자열로 반환 숫자 리터럴과 사용시 괄호를 쓸 것 .의 구분이 모호, ..
28장. Number(1) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 28.1 Number 생성자 함수 Number 객체 표준 빌트인 객체 생성자 함수 객체 Number 인스턴스 생성 가능 인수 전달하지 않고 new 연산자와 함께 호출하면 [[NumberData]] 내부 슬롯에 0을 할당한 Number 래퍼 객체 생성 인수를 전달하고 new 연산자와 함께 호출하면 [[NumberData]] 내부 슬롯에 인수로 전달받은 숫자를 할당한 Number 래퍼 객체 생성 숫자가 아닌 값을 전달하면 숫자로 강제 변환 숫자로 변환할 수 없으면 NaN을 할당한 래퍼 객체 생성 28.2 Number 프로퍼티 28.2.1 Number.EPSILON ES6 도입 1과 1보다 큰 숫자..
27장. 배열(4) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 27.9 배열 고차 함수 27.9.4 Array.prototype.filter 모든 요소를 순회하며, 콜백 함수의 반환값이 true인 요소로만 구성된 새로운 배열 반환 특정 요소만 추출 filter 메서드가 생성하여 반환한 새로운 배열의 length는 원본 배열의 length보다 같거나 작음 원본 배열은 변경되지 않음 const pats = [ {name: 'siru', isCat: true, isDog: false}, {name: 'dangdangi', isCat: false, isDog: true}, {name: 'nunu', isCat: true, isDog: false}, {name: ..
27장. 배열(3) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 27.9 배열 고차 함수 고차 함수: 함수를 인수로 전달받거나 함수를 반환하는 함수 외부 상태의 변경이나 가변을 피하고 불변성을 지향하는 함수형 프로그래밍에 기반 조건문과 반복문을 제거 변수의 사용 억제 순수 함수를 통해 부수 효과를 최대한 억제 27.9.1 Array.prototype.sort 배열 요소 정렬 원본 배열을 직접 변경하며 정렬된 배열 반환 기본적으로 오름차순으로 요소 정렬 기본 정렬 순서는 유니코드 코드 포인트의 순서를 따름 숫자를 정렬할 때는 정렬 순서르 정의하는 비교 함수를 인수로 전달 비교 함수는 양수, 음수 또는 0을 반환해야 함 음수인 경우, 첫 번째 인수를 우선하여 ..
27장. 배열(2) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 27.5 배열 요소의 참조 참조할 때에는 대괄호 표기법([]) 사용 대괄호 안에는 인덱스 정수로 평가되는 표현식 사용 가능 요소가 존재하지 않으면 undefined 27.6 배열 요소의 추가와 갱신 배열에 요소를 동적으로 추가 가능 존재하지 않는 인덱스를 사용해 값 할당 가능 length 프로퍼티는 자동 갱신 legnth 프로퍼티보다 큰 인덱스에 할당 시에는 희소 배열이 됨 27.7 배열 요소의 삭제 배열도 객체이므로 delete 연산을 사용하여 특정 요소 삭제 가능 length 프로퍼티에 영향을 주지 않음 희소배열이 되므로 사용하지 않는 것이 좋음 splice 메서드를 사용할 것을 권장 27..
27장. 배열(1) 본 내용은 모던 자바스크립트 Deep Dive - 자바스크립트의 기본 개념과 동작 원리를 토대로 작성하였습니다. 27.1 배열이란? 여러 개의 값을 순차적으로 나열한 자료구조 요소(element) : 배열이 가지고 있는 각각의 값 인덱스 : 배열 요소의 위치를 의미하는 값 0부터 시작 length: 배열 요소의 개수 즉 길이를 의미하는 값 자바스크립트의 배열은 객체 타입 const churu = ['참치맛', '연어맛', '닭고기맛']; ​ console.log(churu[0]); // 참치맛 console.log(churu[1]); // 연어맛 console.log(churu[2]); // 닭고기맛 console.log(churu.length); // 3 console.log(typeof churu);..