Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Что значат выражения типа 0 == 14? (https://javascript.ru/forum/misc/58151-chto-znachat-vyrazheniya-tipa-0-%3D%3D-14-a.html)

Risa 07.09.2015 17:32

Что значат выражения типа 0 == 14?
 
По виду похоже, что цифру 0 используют как переменную.

laimas 07.09.2015 17:56

Цифра не может быть именем переменной, и это сравнение, с таким же успехом можно было бы if(!1) ... Возможно в оригинале не 0, а o?

Risa 07.09.2015 18:05

Мне этот код тоже кажется очень странным. Но там ноль - идёт косая черта, чтобы подчеркнуть, что это не о.

laimas 07.09.2015 18:10

Ну значит ради мозги запудрить, есть такие уловки в коде.

Risa 07.09.2015 18:49

Судя по дальнейшему коду очень похоже на то. Спасибо!

Aetae 07.09.2015 20:08

Да элементарный говнокод на смеси js и php. Многие так делают. На самом деле там примерно так:
if(<?php echo $val ?> == 14) ...

Lemme 07.09.2015 20:11

Aetae, видимо, владельцу кода - часто кидали ссылку http://phpfaq.ru/na_tanke#js

=)

nerv_ 07.09.2015 22:24

Цитата:

Сообщение от Risa
Что значат выражения типа 0 == 14?

не ищи смысл там, где его нет :)

laimas 08.09.2015 06:56

Цитата:

Сообщение от nerv_
не ищи смысл


Так на это и расчет. :)

forwardonly2015 08.09.2015 10:48

Цитата:

Сообщение от Aetae
Да элементарный говнокод

А почему ты считаешь, что это говнокод? чем это принципиально отличается от
if(someExpression == 10) soStaff

у тебя someExpression точно также вычислится в число, и будет сравнение 2-х чисел, просто в статике этого не видно.

Aetae 09.09.2015 03:02

forwardonly2015, тем что мешать всё в кучу - говнокод по определению.
HTML(шаблон) должен быть отдельно, css - отдельно, js - отдельно, данные из php - тоже отдельно.

Чуток конкретики, если вышеприведённые прописные истины пока для вас не очевидны: такой скрипт каждый раз генерируется и нормально не кэшируется; такую кашу сложно и противно поддерживать; ...

forwardonly2015 09.09.2015 03:07

Цитата:

Сообщение от Aetae
данные из php - тоже отдельно.

Это не данные из PHP, это код, сгенерированный PHP (или любым другим серверным языком, включая JS)

forwardonly2015 09.09.2015 03:11

Цитата:

Сообщение от Aetae
такой скрипт каждый раз генерируется и нормально не кэшируется

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

forwardonly2015 09.09.2015 03:14

Цитата:

Сообщение от Aetae
такой скрипт каждый раз генерируется

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

Aetae 09.09.2015 03:14

forwardonly2015, он каждый раз генерируется заново в зависимости от данных в php, очевидно же, нэ? Соответственно каждый раз грузится с сервера, замедляя отклик.

forwardonly2015 09.09.2015 03:20

Цитата:

Сообщение от Aetae
он каждый раз генерируется заново в зависимости от данных в php, очевидно же, нэ?

Очевидно, что если речь идет о странице, на которой не предусмотрено изменений, сервер будет генерировать для нее совершенно одинаковый код. По сети передается только текст, браузеру плевать откуда этот текст берется. Никакой разницы нет. В статические HTML-файлы тоже никто не запрещает вносить изменения.
Цитата:

Сообщение от Aetae
Соответственно каждый раз грузится с сервера, замедляя отклик.

А какой код не грузится каждый раз с сервера? Волшебный?

forwardonly2015 09.09.2015 03:28

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

Aetae 09.09.2015 03:34

"Ой, всё."

forwardonly2015 09.09.2015 03:44

Aetae,
Возможно, при каждом получении страницы, которая была ранее загружена, он проверяет все файлы на изменения, проверкой контрольной суммы, или как-то еще, и в случае, если он уверен в том, что нет изменений, он достает данные из кеша. Но тут способ получения кода, опять же по барабану.


Часовой пояс GMT +3, время: 22:45.