<script>

Элемент <script> предназначен для описания скриптов, может содержать ссылку на программу или её текст на определённом языке. Скрипты могут располагаться во внешнем файле и связываться с любым HTML-документом. Такой подход позволяет использовать одни и те же общие функции на многих веб-страницах и ускоряет их загрузку, т. к. внешний файл кэшируется при первой загрузке, и скрипт вызывается быстрее при последующих вызовах.

<script> может располагаться в заголовке или теле HTML-документа в неограниченном количестве. В большинстве случаев местоположение скрипта никак не сказывается на работу программы. Однако скрипты, которые должны выполняться в первую очередь, обычно помещают в заголовок документа.

Закрывающийся тег: 
Обязателен
Поддержка: 
HTML4 и выше
Атрибуты: 

async - Загружает скрипт асинхронно.

<script async src="script/async.js"></script>

defer - Откладывает выполнение скрипта до тех пор, пока вся страница не будет загружена полностью.

<script defer src="script/defer.js"></script>

language - Устанавливает язык программирования на котором написан скрипт.

<script type="text/javascript" language="JavaScript"> JS = 1; </script>
  <script type="text/javascript">
    if(window.JS) document.write("JavaScript поддерживается браузером");
	else document.write("JavaScript не поддерживается браузером");
</script>

src - Адрес скрипта из внешнего файла для импорта в текущий документ.

type - Определяет тип содержимого script.

<script type="text/javascript"></script>

Пример: 

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>script</title>
 </head>
 <body> 
  <script type="text/javascript">
 
var arr = [ 
"<xmp><a></xmp>",
"<xmp><abbr></xmp>",
"<xmp><acronym></xmp>",
"<xmp><address></xmp>",
"<xmp><applet></xmp>",
"<xmp><area></xmp>",
"<xmp><article></xmp>",
"<xmp><aside></xmp>",
"<xmp><audio></xmp>",
"<xmp><b></xmp>",
"<xmp><base></xmp>",
"<xmp><basefont></xmp>",
"<xmp><bdi></xmp>",
"<xmp><bdo></xmp>" ];
 
    document.writeln ('<table width="50px%" border="1" bordercolor="6CCAED">');
    for (var i=0; i < arr.length; i++) 
       document.writeln("<tr><td>" + arr[i] + "</td></tr>");
    document.write ("</table> ");
 
  </script>
 </body>
</html>