1. Самозакрывающие теги без использования скрипта
Используйте самозакрывающие теги в скрипте. Хотя это законно в XHTML, он не соответствует спецификациям HTML и не может получить правильный анализ некоторых браузеров. Я использовал этот метод как раз тогда, когда я ввел ext, что заставило сценарий не мог быть выполнен правильно.
<script src="example.js"/> --> <script src="example.js"></script>
2. Поместите сценарий перед </body>
Если вы поместите файл скрипта в <head>, вы должны загрузить и выполнить сценарий перед отображением страницы, что увеличивает время ожидания пользователя. Поместите лист стилей в <head>, чтобы предотвратить отображение контента. Общий метод заключается в следующем:
<! Doctype html> <html lang = "en"> <head> <meta charset = "utf-8"> <title> документ </title> <link rel = "stylesheet" type = "text/css" href = "theme.css"/> </head> <body> <!-html-> <script. src = "example.js"/> </body> </html>
3. Используйте строгий режим в функции
Если вы используете строгий режим вне функции, он может привести к тому, что сторонняя библиотека и код коллег не работают должным образом. Внутри функции это может повлиять только на ваш собственный код, а не код других.
function myfunction () {"используйте строго"; // Функциональный код}4. Не опускайте полуколон в конце заявления
Ни один полуколон в конце кода не может легко вызвать ошибки сжатия. Кроме того, в некоторых случаях производительность кода может быть улучшена. Интерпретатор не должен тратить время на угадание, куда вставить полуколоны. Еще одна более распространенная проблема заключается в том, что автоматически вставка полуколонов иногда может совершать ошибки, поэтому не рекомендуется опускать полуколоны.
5. Используйте VAR для определения переменных
Используйте ключевое слово var при определении переменных, и все они продвинуты к началу функции.
Преимущества этого предотвратят бессознательно создавать глобальные переменные и упростить понимание вашего кода.
function myfunction () {var result = 10 + value; var value = 10; вернуть результат;}Нет проблем с синтаксисом функции, но она не очень интуитивно понятна и не соответствует человеческой логике. Было бы лучше изменить его следующим образом:
Funciton myfunction () {var result; var value; Результат = 10 + значение; значение = 10; результат возврата; }Позвольте мне объяснить вам, что вышеупомянутые два кода эквивалентны, а значение результата - NAN. JavaScript будет способствовать объявлению всех переменных в функции до начала функции. Код 1 станет кодом 2, когда код будет выполнен. Когда он запускается, чтобы результат = 10 + значение;, значение значения не определен, а 10 добавляется в NAN, а затем значение назначается 10.
Каждый должен четко понимать проблемы, вызванные глобальными переменными, в противном случае концепция пространства имен не появится.
6. Сначала объявите функцию, а затем используйте ее
Подобно объявлениям переменных, объявления функций также продвигаются двигателем JavaScript, поэтому в коде вызов функции может появиться до объявления функции. Еще одна вещь, которую стоит отметить, заключается в том, что декларации функций не должны появляться в блоках операторов, таких как:
if (условие) {function myfunction () {alert ("true"); }} else {function myfunction () {alert ("false"); }} myfunction ();Когда мы запускаем код, мы обнаружили, что выход будет связан с браузером. Он выводит True в Chrome 51 и Firefox 46 и False в IE 10. Поэтому старайтесь не объявлять функции в блоках операторов.
7. Используйте TypeOF, недооценивающий NULL с осторожностью
NULL - это особое ценность, с которой мы часто путаем с неопределенным. Следующие сценарии должны использовать NULL:
NULL не следует использовать в следующих ситуациях:
Лучший способ понять NULL - это использовать его в качестве заполнителя для объекта. Причина, по которой мы часто путаем нулевые и неопределенные, заключается в том, что мы считаем, что нулевые и неопределенные являются переменными, которые не инициализируются, но только неопределенная означает, что переменная не была инициализирована, и нулевой означает, что она инициализируется как объект. Посмотрите на следующий код:
var person; console.log (typeof person); //undefinedconsole.log(typeof foo); // undefinedvar house = null; console.log (typeof House); //объект
Поэтому старайтесь не использовать TypeOF, чтобы определить, инициализируется ли переменная. Вы не можете быть уверены, что переменная не существует или переменная не инициализирована. Возвращение NULL также не уверен, была ли переменная назначена правильно, поэтому будьте осторожны в использовании TypeOF.
8. Будьте осторожны с типом числа
Я считаю, что все знают, что целые числа JavaScript поддерживают десятичные, восьмиугольные и шестнадцатеричные буквальные ценности. Если числовое значение в буквальном значении превышает диапазон восьмиугольника, ведущий ноль будет игнорироваться, а последующее числовое значение будет проанализировано как десятичное значение.
console.log(012); //10
console.lgo (082); // 82
Если для десятичных десятиц используются октальные и шестнадцатеричные, возникнут ошибка синтаксиса. Другой момент заключается в том, что восьмиугольные литералы недействительны в строгом режиме. Все знают проблему ошибок расчета с плавающей запятой. Это верно для всех расчетов с плавающей запятой на основе значений IEEE754, поэтому никогда не тестируйте конкретное значение плавающей запятой.
В числовом типе есть особое значение, NAN (не число), которое используется для указания того, что значение должно быть возвращено, но не является числовым типом. NAN и любое значение не равны, включая саму NAN. Мы можем использовать функцию ISNAN () для тестирования.
9. Динамическое назначение с использованием логических операций
Что вы предпочитаете
var person = {ave: 10} var condity; var myvar = condity && person; alert (myvar)Если условие преобразуется в ложно логистый тип, то myvar = условие, если истина, то myvar = человек.
var Person = {Age: 10} var Condition; var myvar = условие || человек; Блюдо (myvar)Если условие преобразуется в логическое и истинное, то myvar = условие, если неверно, то myvar = человек.
10. Не используйте оператор с
Важной причиной не использования с использованием является то, что в строгом режиме сам синтаксис отключает утверждение с помощью с помощью оператора, которое также показывает, что комитет ECMASCRIPT убежден, что с помощью не следует использовать. Давайте посмотрим на следующий пример:
var book = {название: "поддерживается JavaScript", автор: "Николас С. Закас"}; var message = "The Book is"; с (book) {message += title; Сообщение + = "by" + Автор;}Проблема с приведенным выше кодом состоит в том, что нам трудно различить местоположение, где появляются заголовок и автор, а также трудно отличить локальную переменную для решения от сообщения или свойства книги. Более того, двигатель JavaScript и инструменты сжатия не могут оптимизировать этот код, поэтому они не могут догадаться о правильном значении кода.
Хорошо, уже десять предметов, давайте увидимся в следующих десяти.