indices[i:] = indices[i+1:] + indices[i:i+1]
J'espère que quelqu'un aide.code python de port à javascript
indices[i:] = indices[i+1:] + indices[i:i+1]
J'espère que quelqu'un aide.code python de port à javascript
Je suis assez nouveau pour Python, mais si je comprends bien le code, il reconstitue une liste d'un décalage donné dans tous les éléments suivants offset + 1 et la article à l'offset.
Son exécution semble confirmer:
>>> indices = ['one','two','three','four','five','six']
>>> i = 2
>>> indices[i:] = indices[i+1:] + indices[i:i+1]
>>> indices
['one', 'two', 'four', 'five', 'six', 'three']
en Javascript peut être écrit:
indices = indices.concat(indices.splice(i, 1));
séquence entière en irait de même:
>>> var indices = ['one','two','three','four','five','six'];
>>> var i = 2;
>>> indices = indices.concat(indices.splice(i, 1));
>>> indices
["one", "two", "four", "five", "six", "three"]
Cela fonctionne parce que splice est destructeur à la matrice mais renvoie les éléments supprimés, qui peuvent ensuite être remis à concat.
Est-il évident que la dernière phrase est inventée juste pour tenir dans certains liens vers les méthodes sur MDC? :-) – Borgar
quelle ligne de commande javascript est-ce? –
Il s'agit d'une ligne de commande imaginaire. J'ai couru le code avec FireBug mais ajouté le >>> à la fin simplement pour le faire ressembler au bloc de Python. :-) – Borgar
Vous voulez regarder Array.slice()
var temp=indices.slice(i+1).concat(indices.slice(i, i+1));
var arr=[];
for (var j=0; j<temp.length; j++){
arr[j+i]=temp[i];
}
Essayez google ...... –
pas familier avec python, donc je ne suis pas sûr de ce que cela fait. On dirait que cela pourrait être expliqué dans une phrase. Ensuite, je pourrais essayer d'aider. –