- Поддерживается всеми браузерами, кроме IE9 и ниже.
- Браузер не останавливает обработку страницы при обнаружении скрипта.
- Скрипт выполняется как только будет загружен.
-
Поддерживается ВСЕМИ браузерами.
-
Работает также асинхронно, но есть два момента:
<script src="1.js" defer></script> <script src="2.js" defer></script>
*Первым сработает всегда 1.js, 2.js, даже если загрузился раньше, будет его ждать.
<script src="async.js" async></script> <script src="defer.js" defer></script>
Скрипт с
defer
сработает после того, как весь HTML-документ будет обработан браузером.
Для включения режима полного соответствия современному стандарту, нужно указать специальную директиву use strict
. Ставится в начале скрипта.
"use strict";
// код будет работать по современному стандарту
- number - целые, вещественные числа
- string - строки
- boolean - булевый
- null - специальное значение, пустота, "ничего"
- undefined - "значение не присвоено"
- object - используется для коллекций данных и для объявления более сложных сущностей.
typeof undefined // "undefined"
typeof 0 // "number"
typeof true // "boolean"
typeof "foo" // "string"
typeof {} // "object"
typeof null // "object" (1)
typeof function(){} // "function" (2)