У меня есть следующий объект в приложении javascript (Node.js, если это имеет значение).Как остановить функцию от обработки как свойства в объекте javascript?
function myObject (myInput){
this.myValue = myInput;
this.myAssociativeArray = {};
this.myAssociativeArrayLen = function() {
var k;
var l = 0;
for (k in this.users){
l = l + 1;
}
return l;
};
}
Когда я вызываю функцию длины и войти на консоль я получаю это как выход:
function() {
var k;
var l = 0;
for (k in this.myAssociativeArray){
l = l + 1;
}
return l;
}
Я действительно ни знаю, как это происходит, но оказывается, что функция обрабатывается как свойство строки, но у меня нет кавычек, так как это могло быть так? Я также заметил, что редактор, который я использую (Sublime), не меняет цвет последнего, как это происходит с другими. Я хотел бы, чтобы функция длины была частью объекта, чтобы я мог просто вызвать myObjectInstance. myAssociativeArray и получить длину. Любая помощь была бы очень признательна!
Как вы призывающую журнал консоли? Обычно, если вы получаете печатную версию функции, потому что вы на самом деле не выполняете эту функцию, а ссылаетесь на нее, то есть 'console.log (someObject.myFunc)' вместо 'console.log (someObject.myFunc())' –
In первый мир 'this.users' или' this.myAssociativeArray'? И как вы вызываете функцию: 'myObject.myAssociativeArrayLen' или' myObject.myAssociativeArrayLen() '? –