웹 브라우저에 설치된 모든 플러그인 목록을 확인하려면 자바스크립트(JavaScript)의 navigator 객체를 활용하면 됩니다. navigator 객체에는 plugins라는 하위 객체가 포함되어 있으며, 이 객체는 배열 형태로 되어 있어 브라우저에 설치된 각 플러그인마다 하나의 항목(entry)을 가집니다.
navigator.plugins 객체란?
navigator.plugins 배열의 각 항목은 플러그인 객체를 담고 있으며, 다음과 같은 주요 속성을 제공합니다.
- name — 플러그인의 이름
- filename — 플러그인 파일의 경로 및 파일명
- description — 플러그인에 대한 설명
예제 코드
아래 코드를 실행하면 현재 브라우저에 설치된 모든 플러그인의 이름, 파일명, 설명이 표 형태로 출력됩니다.
<html>
<head>
<title>플러그인 목록</title>
</head>
<body>
<table border="1">
<tr>
<th>플러그인 이름</th>
<th>파일명</th>
<th>설명</th>
</tr>
<script>
for (i = 0; i < navigator.plugins.length; i++)
{
document.write("<tr><td>");
document.write(navigator.plugins[i].name);
document.write("</td><td>");
document.write(navigator.plugins[i].filename);
document.write("</td><td>");
document.write(navigator.plugins[i].description);
document.write("</td></tr>");
}
</script>
</table>
</body>
</html>코드 설명
위 예제는 navigator.plugins.length를 이용해 설치된 플러그인의 총 개수만큼 반복문을 실행합니다. 반복 과정에서 각 플러그인 객체의 name, filename, description 속성 값을 읽어 document.write()로 HTML 테이블의 행(row)에 하나씩 출력하는 방식입니다.
참고 사항
최신 브라우저들은 보안 및 개인정보 보호를 위해 NPAPI 플러그인 지원을 중단했기 때문에, 현대적인 환경에서는 navigator.plugins 배열이 비어 있는 경우가 많습니다. 따라서 이 코드는 구형 브라우저나 플러그인 기능이 활성화된 환경에서 테스트하는 것이 좋습니다. 또한 실무에서는 document.write() 대신 DOM 조작 방식(createElement, appendChild 등)을 사용하는 것이 권장됩니다.