2011-07-21 2 views
2

Как можно запрограммировать глобальный объект как функцию и объект? Так же, как JQuery делает (если я правильно?)

Например:

X.foo = ''; 

и

X('bar'); 
+0

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

ответ

2

Вы просто определить X и X.foo, как обычно, как это:

var X = function(a) 
{ 
    return a * 2; 
} 
X.foo = function(a) 
{ 
    return a + 1; 
} 

console.log(X(10)); 
console.log(X.foo(10)); 

Результаты в:

20 
11 
0

Функции в JavaScript являются объектами, как любой другой, и может иметь произвольные свойства. Например:

function Test() {} 

Test.someProp = "test"; 

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

Свидетель:

Test instanceof Object // true 
0
function X(string){ 
    alert(string); 
} 

X.foo = 10; 
alert(X.foo); // Alerts "10" 
X('bar');  // Alerts "bar" 
0

Каждый FUNCT ион является объектом в Javascript:

function f(x) { 
    console.log(x); 
} 
f.foo = 1; 
f('bar'); // 'bar 
console.log(f.foo); // 1 
0
function X(name) 
{ 
    if (name == 'bar') 
    { 
     // do so mething 
    } 
} 
X.foo = "hello!"; 

функции являются объектами в JavaScript.

0
function foo(txt){ 

    alert(txt) 

} 
foo.text="bar" 
alert(foo.text)  //will give you "bar" 
foo("bar")   //will give you "bar" also 
Смежные вопросы