“Помещенные сценарии, внизу” корректные? [закрытый]

Примечание: Неинициализированное смещение строки: *

Как видно из названия, возникает такой тип ошибки, когда вы, скорее всего, пытаетесь перебрать или найти значение из массива с не- существующий ключ.

Считаем, что вы пытаетесь показать каждую букву из $string

$string = 'ABCD'; 
for ($i=0, $len = strlen($string); $i <= $len; $i++){
    echo "$string[$i] \n"; 
}

. Вышеприведенный пример сгенерирует ( онлайн-демонстрацию ):

A
B
C
D
Notice: Uninitialized string offset: 4 in XXX on line X

И, как только скрипт заканчивается эхом D, вы получите ошибку, потому что внутри цикла for() вы сказали PHP, чтобы показать вам от первого до пятого символа строки из 'ABCD' Что, существует, но поскольку цикл начинает отсчитываться от 0 и эха D к моменту достижения значения 4, он выдает ошибку смещения.

Аналогичные ошибки:

44
задан casperOne 5 April 2012 в 13:40
поделиться

5 ответов

Когда пользователь запрашивает страницу от Вашего сайта, страница HTML начинает передавать потоком к браузеру. Как только браузер встречается с тегом для внешнего изображения, сценария, файла CSS, и т.д., это начнет загружать тот файл одновременно.

при помещении сценариев внизу страницы они будут загружены в последний раз. Другими словами, содержимое HTML/structure/css/images Вашей страницы/приложения будет загружено сначала, и что-то может обнаружиться в браузере быстрее; Ваши пользователи не должны ожидать сценария, чтобы закончить загружать, прежде чем они будут видеть что-то в Вашем приложении.

31
ответ дан Alan Storm 26 November 2019 в 22:12
поделиться

Причина, почему страницы, которые имеют сценарии в верхней части страницы все еще, выигрывают, потому что это не столь важно как другие повышения производительности, которые могли быть сделаны.

Каждое правило взвешивается, таким образом, некоторые правила влияют на больше класса ySlow, чем другие.

я всегда помещал сценарии в нижнюю часть. Существует очень немного причин необходимости в сценариях наверху Вашей страницы. Единственная причина, о которой я могу думать, является Вами, нуждаются в Вашем JavaScript для выполнения сразу перед чем-либо еще на странице, которая довольно редка.

14
ответ дан Ryan Doherty 26 November 2019 в 22:12
поделиться

Иногда, у Вас нет выбора, кроме как помещать сценарии в определенное местоположение на странице. Однако при помещении сценариев внизу страницы браузер не прервет свой рендеринг для загрузки механизма JS для обработки сценария (который мог бы быть дорогостоящим, если у Вас есть циклы, работающие за большим количеством времен), и вероятно отобразит раннее представление страницы раньше.

8
ответ дан Mehrdad Afshari 26 November 2019 в 22:12
поделиться

Я не уверен, что это - проблема производительности (мог быть), но я был при представлении, данном Microsoft, и предъявитель сказал, что поисковые роботы иногда только читают первое x количество символов на веб-странице для индексации его. Так, если у Вас есть большая сумма сценариев, Ваше содержание не может быть достигнуто и индексировано правильно (и разряд страницы Вашего сайта не будет так же высок).

6
ответ дан Mark Carpenter 26 November 2019 в 22:12
поделиться

Код может сослаться на Объекты DOM, которые не инстанцировали, все же самая очевидная причина, о которой я могу думать.

6
ответ дан dkretz 26 November 2019 в 22:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: