자바스크립트는 자주 사용하는 기능들을 기본 내장 객체로 제공한다.
내장 객체를 사용하면 문자열 처리, 숫자 계산, 날짜 처리, 배열 관리 등을 쉽게 할 수 있다.
문자열을 객체로 만들어 문자열을 더 편리하게 다룰 수 있도록 해주는 객체이다.
변수식 선언 방식
let str = '문자열';
생성자 함수식 선언 방식
let str = new String('문자열');
두 방식 모두 문자열을 다룰 수 있지만, 일반적으로 변수식 선언 방식을 더 많이 사용한다.
| 메소드명 | 설명 |
|---|---|
| charAt(index) | 지정한 인덱스에 위치한 문자 반환 |
| substr(idx, len) | idx부터 len개 문자 추출 (len 생략 시 끝까지) |
| match(str) | 문자열에 특정 문자가 있는지 확인 |
| substring(idxA, idxB) | idxA부터 idxB 이전까지 문자열 반환 |
| toLowerCase() | 문자열을 소문자로 변환 |
| toUpperCase() | 문자열을 대문자로 변환 |
| indexOf(s, idx) | 특정 문자의 위치 검색 |
| replace(a, b) | a 문자열을 b 문자열로 변경 |
| concat(a, b, ...) | 문자열을 순서대로 연결 |
| split(separator, limit) | 문자열을 분리하여 배열로 반환 |
let str = "JavaScript";
console.log(str.charAt(0)); // J
console.log(str.substring(0, 4)); // Java
console.log(str.toUpperCase()); // JAVASCRIPT
console.log(str.split("a")); // 문자열 분리
각 메소드는 문자열을 직접 변경하지 않고 새로운 문자열을 반환한다.
문자열을 숫자로 변환하거나 숫자 관련 기능을 제공하는 객체이다.
변수식 선언 방식과 생성자 함수식 선언 방식이 모두 존재한다.
| 메소드명 | 설명 |
|---|---|
| toString() | 숫자를 문자열로 변환 |
| toFixed(n) | 소수점 n자리까지 반올림하여 문자열로 반환 |
let num = 3.14159;
console.log(num.toString()); // "3.14159"
console.log(num.toFixed(2)); // "3.14"
수학 계산을 위해 제공되는 객체이다.
Math 객체는 생성하지 않고 바로 사용한다.
var testNum = Math.random();
console.log(testNum);
날짜와 시간 정보를 저장하고 처리하는 객체이다.
let now = new Date(); // 현재 날짜와 시간
let day = new Date(2025, 1, 1); // 날짜 지정 (월은 0부터 시작)
| 메소드명 | 설명 |
|---|---|
| getFullYear() / setFullYear() | 연도 반환 / 설정 |
| getMonth() / setMonth() | 월 반환 / 설정 (0~11) |
| getDate() / setDate() | 일 반환 / 설정 |
| getHours() / setHours() | 시 반환 / 설정 |
| getMinutes() / setMinutes() | 분 반환 / 설정 |
| getSeconds() / setSeconds() | 초 반환 / 설정 |
| getMilliseconds() / setMilliseconds() | 밀리초 반환 / 설정 |
| getDay() | 요일 반환 (0:일요일 ~ 6:토요일) |
여러 개의 데이터를 하나의 변수에 저장할 수 있는 객체이다.
let n = [1, 2, 3];
let n2 = new Array(1, 2, 3);
| 속성/메소드 | 설명 |
|---|---|
| length | 배열의 길이 |
| concat(a, b) | 배열을 합쳐 새로운 배열 생성 |
| pop() | 배열의 마지막 요소 제거 |
| shift() | 배열의 첫 번째 요소 제거 |
| push() | 배열의 마지막에 요소 추가 |
| unshift() | 배열의 앞에 요소 추가 |
| slice() | 배열의 일부를 추출 |
| includes() | 특정 요소 포함 여부 확인 |
| forEach() | 배열 요소를 하나씩 순회 |
| sort() | 배열 요소 정렬 |
| reverse() | 배열 순서 반전 |
let arr = [1, 2, 3];
arr.push(4); // [1,2,3,4]
arr.pop(); // [1,2,3]
arr.forEach(function(value, index) {
console.log(value, index);
});
내장 객체를 잘 활용하면 코드가 훨씬 간결해진다.















String 객체는 JS에서 가장 많이 활용되는 객체이다. 위의 예시들과 같이 여러 메서드가 고루고루 요긴하게 많이 쓰여진다.
String 객체는 위의 예시들과 같이 눈으로 보기에는 문자열 (기본형) 같아보이지만 내부적으로 js에서 오토 박싱(자동박싱)으로 내부에서 객체로 처리한다.
추가적으로, 특별한 경우 아래의 예시와 같이 필요에 의해서 직접 객체로 선언되어 쓰여질 수 있다.


JS - string 객체
[참고문서 링크] : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String









JS - Number 객체
[참고문서 링크] : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number




Math 객체에서 Random 메서드는 가장 많이 쓰이는 함수중에 하나이다. 그리고 Random으로 생성된 수는 범위가 기본적으로 0~1이므로 위의 예시와 같이 범위 설정을 해주면 된다.
JS - Math 객체
[참고문서 링크] : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math






JS - Date 객체
[참고문서 링크] : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date








아래와 같이 화살표 함수를 사용해서 간결하게 filter함수를 쓸 수 있다.




filter()함수처럼, 아래와 같이 화살표 함수를 사용해서 간결하게 reduce()함수를 쓸 수 있다.




JS - Array 객체
[참고문서 링크] : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array