2012-07-12 6 views
0

Quelle est la différence entreQuelle est la différence entre la fonction() {} et nouvelle fonction() {}

et

var Basket = function(){} 

On a new function() tandis que l'autre a simplement function(). Aussi, on utilise var.

+1

Cela pourrait aider: http://stackoverflow.com/questions/2274695/ new-function-with-low-case-f-in-javascript – techfoobar

+0

Titre changé pour mieux refléter la question. Il n'y a pas de jQuery ici. – Quentin

+0

Aucun d'eux n'est un objet jQuery. C'est juste du bon vieux javascript. – Christoph

Répondre

2

Ce ne sont pas des objets jQuery. C'est la syntaxe basique de JavaScript.

La différence entre incluant un var ou non est que l'omission d'un var quitte la variable (RGBCatcher) à déclarer implicitement dans la portée globale, ce qui est une mauvaise pratique; vous devriez toujours utiliser une instruction var.

function par lui-même déclare une fonction (dans ce cas, il est une expression de fonction), de sorte que vous pouvez appeler Basket() pour exécuter la fonction de pointage à la variable Basket.

new function appelle new sur la fonction anonyme créée par la construction function; C'est la même chose que la suivante (sauf bien sûr, vous ne créez pas une fonction appelée Constructor);

function Constructor() { 

} 

var RGBCatcher = new Constructor(); 
+0

Je ne comprends pas pourquoi vous avez besoin d'une variable nommée Basket pour une fonction. Quelle est la différence entre dire la fonction Baset() et var Basket = function() {} –

+0

@Ben_hawk: Voir http://stackoverflow.com/questions/1013385/what-is-the-difference-between-a-function-expression -vs-declaration-in-javascrip – Matt

0

S'il vous plaît suivre ce fil:

`new function()` with lower case "f" in JavaScript

var a = new function(){ 

    var member = '1'; 
    alert(member); 
} 

// alertes 1

var b= function(){ 
    alert('2'); 
    return '2'; 
}(); 

// alertes 2

(function(){ 
    alert ('3'); 
    return '3'; 
})(); 

// 3 alertes

alert (a); 

// alertes [Object Object]

alert (b); 

// 2 alertes

Questions connexes