2010-11-09 3 views
2

Juste pour la curiosité, savez-vous (vous avez peut-être déjà fait des tests) si les méthodes déclarées en dehors d'un objet statique dégradent les performances plutôt que de les déclarer à l'intérieur d'un objet statique?Méthodes Javascript d'un objet statique, les déclarant dégrade de manière externe les performances?

En mots de code:

-vous savoir si cela:

var SomeStaticObject = {}; 
SomeStaticObject.render = function() {...} 

génère une que cette dégradation de la performance:

var SomeStaticObject = 
{ 
    render: function() {...} 
}; 

Je suis particulièrement intéressé si vous allez plus bas, imaginez cette situation:

var SomeNamespace = 
{ 
    SomeStaticObject: 
    { 
     render: function() {...} 
    }, 

    ... 
} 

Répondre

2

Declaring them separately is faster. (au moins dans Firefox)

Je ne peux pas imaginer pourquoi.

+1

Dans Chrome, c'est l'inverse (l'accélération est 50% plus rapide). –

+0

Il semble que dans mon Chrome 7.0.517.41 sous Linux i686, les déclarer en ligne est de 30% à 70% plus rapide. Donc je suppose que c'est une question de navigateur. –

+2

Cela prouve très peu. Qui sait quel type d'optimisation le moteur JavaScript est en train de faire dans une boucle artificielle comme ça? Il ne vaut certainement pas la peine de changer ses habitudes. –

Questions connexes