자바스크립트

    [JavaScript] Math 객체

    Math 객체 Math 객체는 수학에서 자주 사용하는 상수와 함수들을 미리 구현해 놓은 자바스크립트 표준 내장 객체다. Math 객체는 다른 전역 객체와는 달리 생성자(constructor)가 존재하지 않는다. 따라서 따로 인스턴스를 생성하지 않아도 Math 객체의 모든 메소드나 프로퍼티를 바로 사용할 수 있다. Math 메소드 자바스크립트는 웹 페이지에서 수학적 작업을 손쉽게 할 수 있도록 다양한 Math 메소드를 제공하고 있다. 가장 많이 사용되는 대표적인 Math 메소드는 다음과 같다. Math.min() Math.max() Math.random() Math.round() Math.floor() Math.ceil() Math.sin() 대부분의 Math 메소드는 웹 브라우저마다 다른 결괏값을 얻을 ..

    [JavaScript] Number 메소드

    Number 메소드 Number 메소드는 Number 객체에 정의되어 있는 숫자와 관련된 작업을 할 때 사용하는 메소드다. 가장 많이 사용되는 대표적인 Number 메소드는 다음과 같다. Number.parseFloat() Number.parseInt() Number.isNaN() Number.isFinite() Number.isInteger() Number.isSafeInteger() Number.parseFloat() 메소드 Number.parseFloat() 메소드는 문자열을 파싱(parsing)하여, 문자열에 포함된 숫자 부분을 실수 형태로 반환한다.문자열에 여러 개의 숫자가 존재하면, 그중에서 첫 번째 숫자만을 실수 형태로 반환한다. 이 메소드는 전역 함수인 parseFloat() 함수와 완전히..

    [JavaScript] Number 객체

    자바스크립트에서의 수 표현 자바스크립트에서 정수와 실수를 따로 구분하지 않고, 모든 수를 실수 하나로만 표현한다. 자바스크립트에서 모든 숫자는 IEEE 754 국제 표준에서 정의한 64비트 부동 소수점 수로 저장된다. 64비트 부동 소수점 수(double precision floating point numbers)는 메모리에 다음과 같은 형태로 저장된다. 0 ~ 51 비트 52 ~ 62 비트 63 비트 총 52비트의 가수 부분 총 11비트의 지수 부분 총 1비트의 부호 부분 이러한 64비트 부동 소수점 수의 정밀도는 정수부는 15자리까지, 소수부는 17자리까지만 유효하다. 다음 예제는 64비트 부동 소수점 수의 정밀도를 알아보는 예제다. var x = 999999999999999; // 15자리의 정수부..

    [JavaScript] 전역 객체와 래퍼 객체

    전역 객체(global object) 전역 객체란 자바스크립트에 미리 정의된 객체로 전역 프로퍼티나 전역 함수를 담는 공간의 역할을 한다. 전역 객체 그 자체는 전역 범위(global scope)에서 this 연산자를 통해 접근할 수 있다. 자바스크립트에서 모든 객체는 전역 객체의 프로퍼티가 된다. 웹 브라우저가 새로운 페이지를 로드(load)하면, 자바스크립트는 새로운 전역 개체를 만들고 해당 프로퍼티들을 초기화한다. 래퍼 객체(wrapper object) var str = "문자열"; // 문자열 생성 var len = str.length; // 문자열 프로퍼티인 length 사용 위의 예제에서 생성한 문자열 리터럴 str은 객체가 아닌데도 length 프로퍼티를 사용할 수 있다. 프로그램이 문자열 ..

    [JavaScript] 객체 프로퍼티와 메소드

    객체 프로퍼티(property) 모든 자바스크립트 객체는 Object 객체와 Object.prototype 객체의 모든 프로퍼티를 상속받는다. prototype 프로퍼티를 이용하면 현재 존재하는 프로토타입에 새로운 프로퍼티나 메소드를 손쉽게 추가할 수 있다. 객체 메소드(method) 모든 자바스크립트 객체는 Object 객체와 Object.prototype 객체의 모든 프로퍼티와 메소드를 상속받는다. 자주 사용되는 대표적인 객체 메소드는 다음과 같다. hasOwnProperty() propertyIsEnumerable() isPrototypeOf() isExtensible() toString() valueOf() hasOwnProperty() 메소드 hasOwnProperty() 메소드는 특정 프로퍼티..

    [JavaScript] 객체 다루기

    this 키워드 자바스크립트에서 this 키워드는 해당 키워드가 사용된 자바스크립트 코드 영역을 포함하고 있는 객체를 가리킨다. 예를 들어, 메소드 내부에서 사용된 this 키워드는 해당 메소드를 포함하고 있는 객체를 가리킨다. 또한, 객체 내부에서 사용된 this 키워드는 객체 그 자신을 가리킨다. 이러한 this는 변수가 아닌 키워드이므로, 사용자가 임의로 가리키는 값을 바꿀 수 없다. ※ 객체 생성자 함수 내부에서 사용된 this 키워드는 어떠한 값도 가지지 않으며, 단순히 새로운 객체로 대체된다. 객체 프로퍼티의 삭제 자바스크립트에서 객체의 프로퍼티를 참조하는 방법은 다음과 같다. 문법 객체이름.프로퍼티이름 또는 객체이름["프로퍼티이름"] 자바스크립트에서는 delete 키워드를 사용하여 객체의 프..