Я хотел бы задать вопрос о требованиях JavaScript нового и крупномасштабного веб-проекта. Мы будем использовать партию JavaScript, ajax запросы, jQuery, json объекты и плагины jQuery в нашем проекте. Мы планирующий сохранить глобальные переменные и партию значений по умолчанию в глобальном конфигурационном файле сайта с php классом и ini файлом на серверной стороне.
Но мы должны читать, использовать и иногда переопределять некоторые переменные и значения конфигурации на клиентском с JavaScript - jQuery.
Этот основанный на JavaScript конфигурационный файл должен иметь следующие свойства;
Также мы можем полностью генерировать этот файл на стороне сервера или генерировать статический .js файл и после запроса PHP, установить некоторый user-page-specific или язык определенные значения, чем мы должны быть помещены (переопределяют) некоторые из сгенерированных значений этой серверной стороны в объекте Js.
Что такое лучшие практики для этого решения? Какие-либо предложения?
- Необходимо определить глобальную переменную или json. или объект или массив javasctipt (я не знайте, что лучше)
JSON - это, по сути, литерал объекта, поэтому он может делать и то, и другое. Действуй. Думайте о JSON как о сериализованном объекте javascript.
- Эти значения должны доступен другим javascript функции и объекты.
Как только вы запустите JSON, он станет доступен в вашем коде.
- Будет хранить логические значения, строки, целые числа, возможно, несколько небольших методов инициализации для 5-6 разных страниц (например: мы не нужны значения конфигурации главной страницы на страницы сведений о продукте, а мы не нужна страница сведений о продукте методы и значения инициализации на главная страница и т. д.)
Опять же, все это может делать JSON.
Я бы предложил файл JSON, который включается через тег скрипта на стороне клиента. JSON легко генерировать, читать и манипулировать на стороне сервера (например: json_encode
, json_decode
в php).
Он ДОЛЖЕН БЫТЬ статическим файлом js, поскольку он меньше всего нагружает сервер. Кроме того, сжатие Gzip может помочь снизить стоимость полосы пропускания.