JavaScript: постоянные свойства

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

Возможно, предложите вам заняться созданием пользовательских элементов управления для winforms.

-121--4859563-

Необходимо ограничить частоту кадров до X кадров в секунду (чаще всего используется 60 FPS). Это обычная функция в большинстве мультимедийных рамок, включая SFML. Для SFML следует обратиться к методу Window/RenderWindow SetFramerateLimit (неподписанный предел int) .

-121--4541810-

Файл сохраняется во временном каталоге в момент его загрузки, но вы можете использовать $ _ FILES ['uploadedfile'] ['tmp _ name'] для его чтения без необходимости сохранения в постоянном месте.

12
задан CodeSalad 25 May 2009 в 01:57
поделиться

3 ответа

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

В литерале объекта есть специальный синтаксис для него:

var XU = {
    get Cc() { return Components.classes; }
};

Во втором примере вы можете использовать метод __ defineGetter __ чтобы добавить его либо в aXU.prototype , либо в this внутри конструктора. Какой способ лучше, зависит от того, отличается ли значение для каждого экземпляра объекта.

Edit: Чтобы помочь с проблемой читабельности, вы можете написать функцию вроде defineConstant , чтобы скрыть некрасивость .

function defineConstant(obj, name, value) {
    obj.__defineGetter__(name, function() { return value; });
}

Кроме того, если вы хотите выдать ошибку при попытке присвоения ей, вы можете определить установщик, который просто генерирует объект Error:

12
ответ дан 26 October 2019 в 10:46
поделиться

ОБНОВЛЕНИЕ : Это работает!

const FIXED_VALUE = 37;
FIXED_VALUE = 43;
alert(FIXED_VALUE);//alerts "37"

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

Я думаю, что самое близкое, что вы получите, это определение «константы» для «класса» .

// Create the class
function TheClass(){
}

// Create the class constant
TheClass.THE_CONSTANT = 42;

// Create a function for TheClass to alert the constant
TheClass.prototype.alertConstant = function(){
  // You can’t access it using this.THE_CONSTANT;
  alert(TheClass.THE_CONSTANT);
}

// Alert the class constant from outside
alert(TheClass.THE_CONSTANT);

// Alert the class constant from inside
var theObject = new TheClass();
theObject.alertConstant();

Однако сам "класс" TheClass может быть переопределен позже

5
ответ дан 26 October 2019 в 10:46
поделиться

Если вы используете Javascript 1.5 (например, в XUL), вы можете использовать ключевое слово const вместо var для объявления константы.

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

(function(){ 

const XUL_CC = Components.classes;

// Use the constant here

})()
2
ответ дан 26 October 2019 в 10:46
поделиться
Другие вопросы по тегам:

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