[TCP School/자바스크립트] 브라우저 객체 모델(BOM) - Navigator 객체

2023. 4. 25. 14:32

navigator 객체는 브라우저 공급자 및 버전 정보 등을 포함한 브라우저에 대한 다양한 정보를 저장하는 객체이다.

이 객체의 이름은 넷스케이프(Netscape)의 초기 웹 브라우저였던 네비게이터(navigator)에서 유래되었다.


브라우저 스니핑(browswer sniffing)

과거에는 방문자의 웹 브라우저의 종류를 미리 파악하여 조치함으로써, 브라우저 간의 호환성을 유지하였다.

이렇게 호환성을 유지하는 방법을 브라우저 스니핑이라고 한다.

 

navigator 객체는 이러한 브라우저 스니핑에서 사용할 수 있는 다양한 표준 프로퍼티 및 비표준 프로퍼티를 제공한다.

하지만 현재는 이 방법보다 필요한 프로퍼티만을 간단하게 테스트하는 기능 테스팅 방법을 더 많이 사용한다.


현재 브라우저에서 실행되고 있는 운영체제

navigator 객체의 platform 프로퍼티는 현재 브라우저가 실행되고 있는 운영체제를 식별하는 문자열을 반환한다.

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>navigator.platform</title>
</head>
<body>
    <h1>현재 브라우저가 실행되고 있는 운영체제</h1>

    <script>
        document.write('현재 브라우저가 실행되고 있는 운영체제는 ' + navigator.platform + '입니다.');
    </script>
</body>
</html>

 


현재 브라우저의 기본 언어 설정

navigator 객체의 language 프로퍼티는 현재 사용 중인 브라우저의 기본 언어 설정을 반환한다.

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>navigator.language</title>
</head>
<body>
    <h1>현재 브라우저의 기본 언어 설정</h1>

    <script>
        document.write('현재 브라우저의 기본 언어 설정은 ' + navigator.language + '입니다.');
    </script>
</body>
</html>

 


자바 애플릿 실행 여부

navigator 객체의 javaEnabled() 메소드는 현재 사용 중인 브라우저가 자바 애플릿을 실행할 수 있는지를 검사하는 비표준 메소드이다.

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>navigator.javaEnabled</title>
</head>
<body>
    <h1>자바 애플릿 실행 여부</h1>

    <script>
        document.write('현재 브라우저는 자바 애플릿을 ');
        if (navigator.javaEnabled()) {
            document.write('실행할 수 있습니다.');
        }
        else {
            document.write('실행할 수 없습니다.')
        }
    </script>
</body>
</html>

 


쿠키 사용 여부

navigator 객체의 cookieEnabled 프로퍼티는 현재 사용 중인 브라우저가 쿠키를 사용할 수 있는지를 검사하는 비표준 프로퍼티이다.

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>navigator.cookieEnabled</title>
</head>
<body>
    <h1>쿠키 사용 여부</h1>

    <script>
        document.write('현재 브라우저는 쿠키를 ');
        if (navigator.cookieEnabled) {
            document.write('사용할 수 있습니다.');
        }
        else {
            document.write('사용할 수 없습니다.')
        }
    </script>
</body>
</html>

 


TCP School의 강의 내용을 정리한 포스트입니다.

http://www.tcpschool.com/javascript/intro

 

코딩교육 티씨피스쿨

4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등

tcpschool.com

BELATED ARTICLES

more