Существуют следующие способы достижения этого:
Эти устройства будут автоматизировать в зависимости от ширины и высоты экрана.
, кажется, способ сделать это, используя существующий драйвер C # следующим образом:
db["collection"].Find(new Document().Append("query",
new Document()).Append("orderby",
new Document().Append(name:1).Append(age,-1)));
Что я был включен в SAM Corder здесь
-121--1236728-Это не о производительности, речь идет о доступе к собственности конкретного экземпляра объекта: -
x.init()
не будет отображать «тест», если вы не использовали это
в функции.
Эффективно, что вышеуказанная линия такая же, как: -
x.init.call(x);
Первый настроек при использовании вызова
присваивается это
, когда функция выполняется.
Теперь рассмотрим: -
var fn = x.init; //Note no () so the function itself is assigned to the variable fn
fn();
Теперь вы ничего не получаете в оповещении. Это потому, что вышеизложенное эффективно: -
fn.call(window);
в браузере, размещенном JavaScript. Окно
объект является синонимом глобального объекта. Когда функция называется «в RAW», то это
по умолчанию для глобального объекта.
Классическая ошибка делает что-то подобное: -
var x = {
ele: 'test';
init: function(elem) {
elem.onclick = function() { alert(this.ele); }
}
}
x.init(document.getElementById('myButton'));
Однако это не работает, потому что функция, прикрепленная к событию OnClick, называется браузером, использующим код, как: -
onclick.call(theDOMElement)
, следовательно, когда функция работает Это
не то, что вы думаете.
Мое обычное решение этой ситуации: -
var x = {
ele: 'test';
init: function(elem) {
var self = this;
elem.onclick = function() { alert(self.ele); }
elem = null;
}
}
x.init(document.getElementById('myButton'));
Обратите внимание на Elem = Null
IE .
Это очень запутанно. Это зависит от того, как вы вызываете функцию. Даг Крокфорд написал хорошую статью в своей книге Javascript, Good Parts . Суть этого в этот превосходный ответ на иначе плохо сформулированный вопрос.
И нет, дело не в производительности.
Хорошая и поучительная статья по ключевому слову this
- это это (не каламбур). Статья может прояснить для вас вещи, я знаю, что это сделал для меня.
Основное правило заключается в том, что ключевое слово this
внутри функции всегда относится к владельцу функции, и ключом к пониманию последствий является понимание того, когда функции передаются и когда они копируется . См. Вышеупомянутую статью для примеров.
Использование
var me = this;
вне
function(){
, тогда вы можете ссылаться на меня внутри функции ()
Для меня это помогло много следующих руководств: каждый раз, когда вы видите это
думают владелец
. Объект, который владеет именем переменного, к которому назначена функция, станет это
. Если вы не можете иметь смысл, кому это принадлежит, то это
будет окно.