JavaScript | 내장 객체(1) - [불리언, 숫자, 수학, 날짜, 문자열, ]

yuni·2022년 10월 7일
0

javascript

목록 보기
9/16
post-thumbnail

👁‍🗨 내장 객체 (Built-in object)

  • 브라우저의 자바스크립트 엔진에 내장된 객체

✔ 불리언 객체(Boolean object)

Boolean 객체는 불리언 값을 감싸고 있는 객체이다. 첫 번째 매개변수로서 전달한 값이 불리언 값으로 변환된다.

//Boolean
const isTrue = true; //new Boolean(true);
console.log(isTrue.valueOf());  //true

*false

  • 0
  • -0
  • null
  • NaN
  • undefined
  • ' '

*true

  • 1
  • -1
  • '0'
  • 'false'
  • [ ]
  • { }

숫자 객체(Number object)

Number 는 숫자를 표현하고 다룰 때 사용하는 원시 래퍼 객체이다. Number(value)처럼 함수로 사용하면 문자열이나 다른 값을 Number 타입으로 변환한다. 만약 만약 인수를 숫자로 변환할 수 없으면 NaN을 리턴한다.

const num1 = 123; //123 type: number
const num2 = new Number(123); //[Number: 123] type: object

console.log(Number.MAX_VALUE); //1.7976931348623157e+308
console.log(Number.MIN_VALUE); //5e-324
console.log(Number.MAX_SAFE_INTEGER); //9007199254740991
console.log(Number.MIN_SAFE_INTEGER); //-9007199254740991
console.log(Number.NaN); //NaN
console.log(Number.NEGATIVE_INFINITY); //-Infinity
console.log(Number.POSITIVE_INFINITY); //Infinity

//지수 표기법(매우 크거나 작은 숫자를 표기할때 사용, 10의 n승으로 표기)
const num3 = 102;
console.log(num3.toExponential()); //1.02e+2

//반올림하여 문자열로 변환
const num4 = 123.4;
console.log(num4.toFixed()); //123

console.log(num4.toString()); //123.4  type: string
console.log(num4.toLocaleString('ar-EG')); //١٢٣٫٤  type: string

//원하는 자릿수까지 유효하도록 반올림
console.log(num4.toPrecision(3)); //123
console.log(num4.toPrecision(1)); //1e+2 전체자릿수표기 X 지수표기법

//0과 1사이에서 나타낼 수 있는 가장 작은 숫자
console.log(Number.EPSILON);  //2.220446049250313e-16

Instance methods
toExponential(): 지수표기법으로 표기된 숫자를 문자열로 반환한다.
toFixed(): 인수번째의 소수점까지 출력(문자데이터)
toString(): 문자열로 반환한다.
toLocaleString(): 이 숫자를 해당 언어 방식으로 표현된 문자열을 반환한다.
toPrecision(): 원하는 자릿수까지 유효하도록 반올림하여 반환한다.
Number 더 자세히 알아보기- MDN

✔ 수학 객체(Math object)

Math수학 상수 및 함수에 대한 속성과 메서드가 있는 내장 객체이다.

//static method

//절대값
Math.abs(-12) //12

//최대, 최소값
Math.min(2,8) //2
Math.max(2,8) //8

//거듭제곱
2 ** 2 //4
Math.pow(2,2) //4

//제곱근
Math.sqrt(9) //3

//소수점
Math.ceil(3.14) //4
Math.floor(3.14) //3
Math.round(3.5) //4
//정수만
Math.trunc(1.23) //1

//랜덤
Math.random()  //0.xxxxxxx

abs(): 주어진 숫자의 절대값을 반환합니다. 
x가 양수이거나 0이라면 x를 리턴하고, x가 음수라면 x의 반대값, 즉 Math.pow(양수를 반환합니다.
min(): 가장 작은 수 를 반환
max(): 가장 큰 수 를 반환
pow(): 거듭제곱 반환
sqrt(): 제곱근 반환
ceil(): 소수점 이하를 올림
floor(): 소수점 이하를 내림
round(): 소수점 이하를 반올림
trunc(): 정수만 반환
random(): 0과 1사이의 랜덤숫자 반환(0.XXXXX)
Math 객체들을 더 알아보기- MDN

✔ 문자 객체(String object)

⇨ String 전역 객체는 문자열(문자의 나열)의 생성자

const textObj = new String('Happy Halloween');
const text = 'Happy Halloween';
console.log(textObj); //[String: 'Happy Halloween']
console.log(text); //Happy Halloween

//문자의 길이
console.log(text.length); //15

//배열의 인덱스로 접근
console.log(text[1]); //a
console.log(text[5]); // 공백
//함수로 접근
console.log(text.charAt(1)); //a
console.log(text.charAt(5)); // 공백

//문자열에 글자가 몇번째 위치인지
console.log(text.indexOf('H')); //0 → 중복되면 맨 앞에부터 위치되어 있는 순번
console.log(text.lastIndexOf('H')); //6 → 중복되면 맨 뒤에부터 위치되어 있는 순번

//문자열에 특정한 글자가 포함되어있는지 boolean으로 반환
console.log(text.includes('h')); //false → 대소문자 구별
console.log(text.includes('oe')); //false
console.log(text.includes('H')); //true

//문자열에 특정한 문자로 시작되는지 boolean으로 반환
console.log(text.startsWith('h')); //false → 대소문자 구별
console.log(text.startsWith('H')); //true
//문자열에 특정한 문자로 끝나는지 boolean으로 반환
console.log(text.endsWith('n')); //true

//문자열을 다 대문자,소문자로 변환
console.log(text.toUpperCase()); //HAPPY HALLOWEEN
console.log(text.toLowerCase()); //happy halloween

//특정한 문자를 삭제
console.log(text.substring(0, 3)); //Hap → 0~3번째 인덱스 전까지
console.log(text.slice(3)); //py Halloween → 앞에서부터 3번째 인덱스 이후로 문자열 삭제
console.log(text.slice(-3)); //een → 뒤에서부터 3번째 인덱스 이후로 문자열 삭제

//문자열에서 연결되어있는 공백들 삭제
const space = '   공 백         ';
console.log(space.trim()); //공 백

//문자열을 나눌때 → 배열로 반환
const text2 = 'Kepp your own way';
console.log(text2.split(' ')); //[ 'Kepp', 'your', 'own', 'way' ]
console.log(text2.split(' ', 2)); //[ 'Kepp', 'your' ]

String 객체들을 더 알아보기 - MDN

✔ 날짜 객체(Date object)

Date 객체는 1970년 1월 1일 UTC(협정 세계시) 자정과의 시간 차이를 밀리초로 나타내는 정수 값을 기준으로,날짜와 시간 등 구성 요소를 가져오는 메서드는 모두 현지(호스트 시스템의 위치)의 시간대를 사용한다.

//UTC기준
console.log(new Date()); //2022-10-07T12:09:25.714Z  현재날짜시간
console.log(new Date('Oct 4, 2022')); //2022-10-03T15:00:00.000Z 날짜지정
console.log(new Date('2022-12-25T17:00:00')); //2022-12-25T08:00:00.000Z

console.log(Date.now()); //1665144772251  밀리초단위
console.log(Date.parse('2022-12-25T17:00:00')); //1671955200000

const date = new Date();
date.setFullYear(2023); //2023-10-07T12:18:10.261Z
date.setMonth(2); //2023-03-07T12:18:34.496Z → 0은 1월

console.log(date); //2023-03-07T12:21:53.404Z
console.log(date.getFullYear()); //년도: 2023
console.log(date.getDate()); //일: 7 → 0은 1일
console.log(date.getDay()); //2  → 0:일요일 ...6:토요일

console.log(date.toString()); //Tue Mar 07 2023 21:25:59 GMT+0900 (대한민국 표준시)
console.log(date.toDateString()); //Tue Mar 07 2023
console.log(date.toTimeString()); //21:26:32 GMT+0900 (대한민국 표준시)
console.log(date.toISOString()); //ISO 8601형식
console.log(date.toLocaleString('en-US')); //3/7/2023, 9:28:22 PM
console.log(date.toLocaleString('ko-KR')); //2023. 3. 7. 오후 9:28:22

Date 객체들 더 알아보기 - MDN

참조 및 출저
Boolean - MDN
Number - MDN
Math - MDN
String - MDN
Date - MDN

profile
˗ˋˏϟˎˊ˗ 개발 지식 쌓기

0개의 댓글