Possible en double:
Can somebody explain this Javascript method ?Pourquoi cette expression renvoie-t-elle true?
(x = [].reverse)() === window // true
Toute idée pourquoi?
Possible en double:
Can somebody explain this Javascript method ?Pourquoi cette expression renvoie-t-elle true?
(x = [].reverse)() === window // true
Toute idée pourquoi?
(x=[].reverse)() === window // true
ne comprenions pas celui-ci au début, mais je suppose qu'il est facile: tout d'abord x devient la fonction inverse des tableaux, il est appelé avec
this === window
. Donc, cela revient àwindow.reverse()
. Il suffit de regarder, et inverse() fonctionne en place, doncwindow.reverse() === window
- même si elle est potentiellement différente d'avant.
J'ai eu cette réponse de ce lien
Au moins un lien vers l'endroit où vous l'avez obtenu à partir de http://news.ycombinator.com/item?id=1122004 –
Exactement. '(x = []. reverse)()' est équivalent à 'Array.prototype.reverse.call (null)', ce qui signifie 'this' pour' reverse' sera un objet global, ie 'window' – vava
maintenant son ok pour vous mr.çağdaş – ratty
Il me semble que la pièce la plus inutile code jamais écrit, à moins qu'il a été écrit comme un casse-tête. Où l'as tu trouvé? –
dupe: http://stackoverflow.com/questions/2261342/can-somebody-explain-this-javascript-method/2261394#2261394 – bobince
@Andy E: Je l'ai vu ici: http://wtfjs.com/page/ 3 –