웹프로그래밍/javascript

자바스크립트 - 기본 내장객체

Gamcho 2018. 7. 20. 15:11

기본 자료형 - 숫자, 문자열, 불리언

기본 자료형과 객체는 다르다. (숫자 자료형과 객체 자료형을 연산하면 결과가 달라지므로 주의)


기본 자료형에 속성이나 메서드를 사용하면 자동으로 객체로 변환된다.(일회용, 사용시 한번만 변환)

->prototype으로 완전히 바꿀수 있다.

단, 기본 자료형이 속성이나 메서드를 가질 수는 없다. (객체가 아니기 때문에)


기본 내장객체 메서드는 w3schools 사이트를 참고한다.


-Object 객체 생성

var object = {};

var object = new Object();


-typeof : constructor를 이용한 기본 자료형과 객체 자료형 검사

<!DOCTYPE html>

<html>

<head>

   <script>

       // 변수를 선언합니다.

       var numberFromLiteral = 273;

       var numberFromObject = new Number(273);


       // 자료형을 확인합니다.

       if (numberFromLiteral.constructor == Number) {

           alert('numberFromLiteral은 숫자입니다.');

       }

       if (numberFromObject.constructor == Number) {

           alert('numberFromObject는 숫자입니다.');

       }

    </script>

</head>

<body>


</body>

</html>


<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var stringFromLiteral = 'Hello World..!';

        var stringFromConstructor = new String('Hello World..!');


        // 변수의 자료형을 출력합니다.

        var output = '';

        output += typeof (stringFromLiteral) + '\n';

        output += typeof (stringFromConstructor);

        alert(output);

    </script>

</head>

<body>


</body>

</html>


-소수점 자릿수

<!DOCTYPE html>

<html>

<head>

   <script>

        // 변수를 선언합니다.

        var number = 273.5210332;

        // 출력합니다.

        var output = '';

        output += number.toFixed(1) + '\n';

        output += number.toFixed(4);

        alert(output);

    </script>

</head>

<body>


</body>

</html>


-함수는 속성과 메서드를 갖는다.

<!DOCTYPE html>

<html>

<head>

   <script>

       // 생성자 함수를 만듭니다.

       function Constructor() { }

       Constructor.property = 273;

       Constructor.method = function () { };


       // 출력합니다.

       alert(Constructor.property);

    </script>

</head>

<body>


</body>

</html>


-MAX_VALUE : 자바스크립트 최대 숫자 

<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var number = Number.MAX_VALUE + 1;


        // 출력합니다.

        alert(number);

    </script>

</head>

<body>


</body>

</html>

    

<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var addNumber = Number('0.0000000000000001e+308');

        var number = Number.MAX_VALUE + addNumber;


        // 출력합니다.

        alert(number);

    </script>

</head>

<body>


</body>

</html>


-String.length()

<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var characters = prompt('사용할 비밀번호를 입력해주세요.', '6글자 이상');


        // 출력합니다.

        if (characters.length < 6) {

            alert('6글자 이상으로 입력하세요.');

        } else {

            alert('잘했어요!');

        }

    </script>

</head>

<body>


</body>

</html>


-string.toUpperCase()

문자열 변수의 바뀐 내용은 메모리의 다른 위치에 저장된다.

-> 

var string = 'abcde';

string = string.toUpperCase()처럼 결과를 다시 변수에 대입해준다.

<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var string = 'abcdefg';


        // 출력합니다.

        string = string.toUpperCase();

        alert(string);

    </script>

</head>

<body>


</body>

</html>


-Array 객체

<!DOCTYPE html>

<html>

<head>

    <script>

       // Array생성자 함수의 프로토타입에 remove() 메서드를 추가합니다.

        Array.prototype.remove = function (index) { this.splice(index, 1); }

        // 변수를 선언합니다.

        var array = [52, 273, 103, 32, 274, 129];

        // 반복문과 조건문을 사용해 100보다 큰 요소를 제거합니다.

        for (var i = 0; i < array.length; i++) {

        if (array[i] > 100) {

                alert(array);

                array.remove(i);

            }

        }

        // 출력합니다.

        alert(array);

    </script>

</head>

<body>


</body>

</html>


-Date객체

<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var date = new Date();


        // 현재 시간에서 7일을 더합니다.

        date.setDate(date.getDate() + 7);


        // 출력합니다.

        alert(date);

    </script>

</head>

<body>


</body>

</html>


-Math 객체

<!DOCTYPE html>

<html>

<head>

    <script>

        // 변수를 선언합니다.

        var findMax = Math.max;


        // 출력합니다.

        alert(findMax(52, 273, 103, 57, 32));

    </script>

</head>

<body>


</body>

</html>