В CMS, которую я создаю, я хочу иметь свой собственный объект пространства имен javascript $cms
. Этот объект должен иметь метод / функцию hasIdentity
, которая возвращает статус входа пользователя в систему.
Есть ли способ, которым этот метод / функция может возвращать статус, не прибегая к одному из следующих способов:
- AJAX
- глобальная переменная
- или переписать следующий скрипт из PHP
Вот что у меня так вар:
var $cms = {
hasIdentity: function()
{
return /* the status provided by PHP */;
}
};
Возможно, это немного эстетично, но я не хочу прибегать к этому:
// write this global var;
var $isLoggedIn = false;
var $cms = {
hasIdentity: function()
{
return $isLoggedIn;
}
};
Или это:
var $cms = {
hasIdentity: function()
{
$isLoggedIn = this.do.some.ajax.call();
return $isLoggedIn;
}
};
Возможно, я больше думал о некоем ООП-подходе, что-то вроде создания $cms
объекта, написав его из PHP:
<script type="text/javascript">
$cms = new $cms( <?php echo $loggedIn ? 'true', 'false' ?> );
</script>
Теперь я считаю, что не могу использовать ключевое слово new
, подобное этому, в Javascript, но я надеюсь, что вы поймете мой дрейф и увидите, куда я хочу пойти с этим.