자바스크립트(Javascript) 해석하지 못하는 브라우저일 때 스크립트 소스 숨기기

 

환경: Eclipse Mars

 

html 에 자바스크립트를 사용할 때 <script> 태그 내부에 소스를 넣게 됩니다. 그리고 <script> 바로 아래 <!-- //--> 주석문을 사용하는데 이유가 있습니다. 쓸데없이 주석문을 추가한 것이 아닙니다. 이것을 넣지 않으면 자바스크립트를 해석하지 못하는 브라우저일 경우 소스가 텍스트로 인식이 되어서 그대로 웹 페이지에 나타나기 때문입니다. 소스가 노출되면 화면이 엉망이 되겠죠. 그래서 주석문을 넣어 주면 인식하지 못하는 브라우저일 경우 주석 처리가 되어서 안보이게 되는 것입니다.  

 

아래 그림처럼 <!-- //--> 주석을 넣지 않고 작성을 했을 때 소스를 해석하지 못하는 브라우저를 만나게 되면 모두 출력이 되게 됩니다. 이것은 개발자가 의도하지 않은 결과입니다. 웹 상에서는 어떤 일이 벌어질지 모르기 때문에 반드시 <!-- //--> 주석문을 넣어 주는 것이 좋습니다. 

<!DOCTYPE HTML>
<html>
<head>
<meta charset="euc-kr">
<title>Javascript</title>
<style type="text/css">
	body {background-color: #e7e7e7;}
</style>
</head>
<body>
<script type="text/javascript">
	document.write("<p>새로운 창에 데이터 출력</p>");
</script>
</body>
</html>

 

자바스크립트(Javascript) 해석하지 못하는 브라우저일 때 스크립트 소스 숨기기

 

만약 <script> 소스 내부에 <!-- --> 주석문을 넣어 주면 해석하지 못하는 브라우저를 만났을 때 소스를 표현하지 않고 주석으로 인식하게 됩니다. 그런데 --> 앞에 역슬레쉬 두 개는 “//” 여러 줄의 자바스크립트의 주석처리를 위한 것입니다. 대부분의 자바 스크립트는 여러줄로 작성하기 때문에 “//” 는 기본적으로 넣어 주는 것이 좋겠죠. <!-- --> 는 한 줄짜리 주석문입니다.

<!DOCTYPE HTML>
<html>
<head>
<meta charset="euc-kr">
<title>Javascript</title>
<style type="text/css">
	body {background-color: #e7e7e7;}
</style>
</head>
<body>
<script type="text/javascript">
<!--
	document.write("<p>새로운 창에 데이터 출력</p>");
//-->
</script>
</body>
</html>

자바스크립트(Javascript) 해석하지 못하는 브라우저일 때 스크립트 소스 숨기기

Posted by 녹두장군