[JavaScript] 내장 객체(Built-in Object)란 무엇인가?

흩날리는추억·2023년 12월 25일
0
post-thumbnail

들어가기 전

일반적인 객체에 대한 내용도 알고 싶은 분들은 제가 예전에 적었던 글이 있으니 보고 오시면 좋겠습니다. -> 객체란 무엇인가?

내장 객체(Built-in Object)

내장 객체는 브라우저에서 JavaScript 코드를 해석하고 실행하는 'JavaScript 엔진'에 포함되어 있습니다. 내장 객체의 경우 특정 기능을 수행할 수 있도록 설계되었으며, 다양한 속성 및 메서드를 제공합니다. 덕분에 개발자들은 복잡한 기능이나 처리를 간편하게 구현할 수 있습니다.

내장 객체의 종류

1. 전역 객체(Global Objects)

전역 객체는 자바스크립트에서 어플리케이션 전체에 접근 가능한 객체를 말합니다. 전역 객체는 특별한 추가 작업 없이 바로 사용할 수 있으며, 내장 객체들 중에서 가장 유명하여 전역 객체를 내장 객체로 착각하는 경우도 있습니다.

전역 프로퍼티(Global Properties)

JavaScript에서 기본적으로 제공하는 전역 프로퍼티는 전역 변수와 비슷합니다. 어떤 객체에도 속하지 않고 어디서든 바로 접근할 수 있습니다.

  • Infinity 양의 무한대를 나타내는 숫자값
  • NaN 숫자가 아님을 나타내는 값
  • undefined 정의되지 않음을 나타내는 값
  • null 아무런 값도 없음을 나타내는 값

전역 함수(Global Functions)

어디에서나 호출할 수 있는 함수로 전역 프로퍼티와 마찬가지로 어떤 객체에도 속하지 않으며, 별도의 선언이나 초기화 없이 바로 사용할 수 있습니다.

  • eval() 문자열을 코드로 해석하고 실행하는 함수
  • isNaN() 주어진 값이 NaN인지를 판별하는 함수
  • parseInt() 주어진 값이 유한한 숫자인지를 판별하는 함수

생성자 함수(Constructor Function)

JavaScript에서 기본적으로 있는 특정 종류의 객체를 생성하는 함수를 말합니다. 전역 범위에서 사용할 수 있으며, new 키워드와 함께 호출하여 해당 타입의 새로운 객체를 생성합니다.

Object() 일반 객체를 생성

let obj = new Object();
obj.property1 = 'value1';
console.log(obj.property1);  // 'value1'

Array() 배열 객체를 생성

let arr = new Array(1, 2, 3);
console.log(arr[0]);  // 1

String() 문자열 객체를 생성

let str = new String('JavaScript');
console.log(str);  // String {'JavaScript'}

2. 오류 객체(Error Objects)

오류 객체는 프로그램 실행 중에 발생하는 다양한 종류의 에러를 해결하기 위해 사용되는 객체입니다. Error 객체를 기반으로 하며, 다양한 종류의 오류를 가지고 있습니다. 각 오류 객체는 에러 메시지, 에러 이름, 그리고 선택적으로 스택 트레이스(stack trace)를 포함합니다.

Error 모든 오류의 부모 격으로 직접 객체를 생성할 수도 있고, 다른 오류 객체들이 상속받아 사용

throw new Error('This is a generic error');

SyntaxError 코드의 구문에 에러가 있을 때 발생하는 에러

eval('hoo bar'); // SyntaxError: Unexpected identifier

TypeError 값이 예상한 타입이 아닐 때 발생하는 에러

null.f(); // TypeError: Cannot read property 'f' of null

3. JSON과 RegExp 객체

JSON과 RegExp는 자바스크립트의 특별한 내장 객체로, 각각 데이터 교환 형식과 정규 표현식을 다루는 데 사용됩니다.

JSON(JavaScript Object Notation)

JSON는 데이터를 교환하는 형식을 제공하는 객체로서 텍스트 기반의 데이터 형식으로, JavaScript 객체의 구조를 기반으로 합니다. JSON.stringify()와 JSON.parse() 메서드를 제공합니다.

JSON.stringify() => JavaScript 값이나 객체를 JSON 문자열로 변환

let obj = {name: 'John', age: 30, city: 'Seoul'};
let myJSON = JSON.stringify(obj);
console.log(myJSON); // {"name":"John","age":30,"city":"Seoul"}

JSON.parse() => JSON 문자열을 JavaScript 값이나 객체로 변환

let obj = {name: 'John', age: 30, city: 'Seoul'};
let myJSON = JSON.stringify(obj);
console.log(myJSON); // {"name":"John","age":30,"city":"Seoul"}

RegExp(Regular Expression)

RegExp는 문자열에서 특정 패턴을 찾거나 대체하는 등의 작업에 사용되는 객체입니다. 정규 표현식은 복잡한 검색과 대체 패턴을 정의하는 데 사용되며, RegExp 객체는 이런 패턴을 다루는 메서드를 제공합니다.

문자열에서 특정 패턴 찾기

let re = new RegExp('ab+c');
let str = 'abcd';
let result = re.test(str);
console.log(result); // true

마무리

내장 객체를 사용함으로 개발자들은 복잡한 기능이나 처리를 간편하게 구현할 수 있습니다. 따라서 내장 객체들의 각 역할과 수행하는 기능에 대해 이해하고 활용하는 것은 JavaScrip를 효과적으로 활용하는데 도움이 된다고 생각합니다.

글 작성에 도움받은 목록

호락호락한순무
mozilla

profile
걱정보다 생각을 하고 싶은 사람

0개의 댓글